jQuery dataTables与jQuery UI 对话框dialog的使用教程


Posted in Javascript onSeptember 02, 2016

首先介绍下这两个插件功能 

1.DataTables是一个jQuery的表格插件。

官方网站及其下载地址:http:/www.datatables.net

其主要特点如下:

1.自动分页处理

2.即时表格数据过滤

3.数据排序以及数据类型自动检测

4.自动处理列宽度

5.可通过CSS定制样式

6.支持隐藏列

7.易用

8.可扩展性和灵活性

9.国际化

10.动态创建表格

11.免费的

2.对话框(dialog),是jQuery UI 非常重要的一个功能。它彻底的代替了JavaScript的alert()、prompt()等方法,也避免了新窗口或页面的繁杂冗余。

我这里直接讲下我需要实现什么样的功能,大家就知道了

jQuery dataTables与jQuery UI 对话框dialog的使用教程

对,就是一个非常简单的删除功能,然后弹出对话框,然后点击确定,执行删除。

首先来看下dataTables里面的写法

$('#table').dataTable({
"sDom": "t" +
"<'soc-pagenagtion' ip>",
oLanguage: {
"sProcessing": "处理中...",
"sLengthMenu": "显示 _MENU_ 项结果",
"sZeroRecords": "没有匹配结果",
"sInfo": "显示第 _START_ 至 _END_ 项结果,共 _TOTAL_ 项",
"sInfoEmpty": "显示第 0 至 0 项结果,共 0 项",
"sInfoFiltered": "(由 _MAX_ 项结果过滤)",
"sInfoPostFix": "",
"sSearch": "搜索:",
"sUrl": "",
"sEmptyTable": "表中数据为空",
"sLoadingRecords": "载入中...",
"sInfoThousands": ",",
"oPaginate": {
"sFirst": "首页",
"sPrevious": "上页",
"sNext": "下页",
"sLast": "末页"
},
"oAria": {
"sSortAscending": ": 以升序排列此列",
"sSortDescending": ": 以降序排列此列"
}
},
"autoWidth": false,
"processing": true,
"serverSide": true,
"searching": false,
ordering: false,
"info": true,
ajax: function (param, callback, settings) {
var service = $("#service").val();
var params = {
//参数集合
}
$.ajax({
type: "GET",
url: "",
dataType: "json",
data: params,
contentType: "application/x-www-form-urlencoded; charset=utf-8",
success: function (d) {
if(d!==null){
callback({
//返回的查询结果
recordsTotal: d.pageUtil.total,
recordsFiltered: d.pageUtil.total,
data: d.pageUtil.list
});
}
}
});
},
"columns": [
{"data": "code"},
{"data": "name"},
//表格所对应的字段
],
"columnDefs": [
{
"render": function (data, type, row) {
//这里是替换显示 比如查询结果为1 你可以显示其他的值
if (row.o_status == '0') {
return [
row.o_status = '停用'
].join('');
} else if (row.o_status == '1') {
return [
row.o_status = '启用'
].join('');
} else {
return [
row.o_status = ''
].join('');
}
},
"targets": 6
},
{
//这一步是追加删除链接
"render": function (data, type, row) {
return [
"<a href='' id='dialog_link'>删除</a>"
].join('');
},
"targets": 8
}
]
});

接着就是写dailog的配置跟样式

html代码

<div id="dialog-message" title="提示">
<p>
<span class="ui-icon ui-icon-circle-check" style="float:left; margin:0 7px 50px 0;"></span>
是否删除该条数据?
</p>
</div>

js代码

// jquery-ui 对话框设置
$( "#dialog-message" ).dialog({
autoOpen : false,
width : 400,
resizable : false,
modal : true,
title:"",
buttons: [{
html : "确认",
"class" : "btn btn_b",
click : function() {
var code= window.parent.$("#dialog-message").data("code");//这里是获取传入的参数值
location.href=";
$(this).dialog("close");
}
}, {
html : "取消",
"class" : "btn btn_o",
click : function() {
$(this).dialog("close");
}
}]
});

接着怎么就是传参数进入对话框

首先定义点击事件弹出对话框

/**
* 弹出对话框并传递参数
*/
$('#table tbody').on( 'click', '#dialog_link', function () {
var table = $('#table').DataTable();
var data = table.row( $(this).parents('tr') ).data();//这里是获取当前你点击的那行的数据
$('#dialog-message').data("code", data.code).dialog('open');//然后传入对话框,打开对话框
return false;
});

我之前一直用

$("#dialog_link").click(function(){
});

不知道为什么一直打不开对话框

注意对话框设置一定要放到上面这个代码的上面

以上所述是小编给大家介绍的jQuery dataTables与jQuery UI 对话框dialog的使用教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
js更优雅的兼容
Aug 12 Javascript
密码强度检测效果实现原理与代码
Jan 04 Javascript
jquery Mobile入门—外部链接切换示例代码
Jan 08 Javascript
Extjs4 关于Store的一些操作(加载/回调/添加)
Apr 18 Javascript
用表格输出1-1000之间的数字实现代码(附特效)
Apr 21 Javascript
node.js中的socket.io的广播消息
Dec 15 Javascript
同步文本框内容JS代码实现
Aug 04 Javascript
js自调用匿名函数的三种写法(推荐)
Aug 19 Javascript
jQuery插件HighCharts实现的2D条状图效果示例【附demo源码下载】
Mar 15 Javascript
详解JavaScript 的变量
Mar 08 Javascript
vue-cli或vue项目利用HBuilder打包成移动端app操作
Jul 29 Javascript
vue实现登录功能
Dec 31 Vue.js
AngularJs  unit-testing(单元测试)详解
Sep 02 #Javascript
AngularJs Managing Service Dependencies详解
Sep 02 #Javascript
AngularJs Injecting Services Into Controllers详解
Sep 02 #Javascript
AngularJs  Creating Services详解及示例代码
Sep 02 #Javascript
利用jQuery实现打字机字幕效果实例代码
Sep 02 #Javascript
AngularJs  Using $location详解及示例代码
Sep 02 #Javascript
基于JS实现类似支付宝支付密码输入框
Sep 02 #Javascript
You might like
开源SNS系统-ThinkSNS
2008/05/18 PHP
PHP字符过滤函数去除字符串最后一个逗号(rtrim)
2013/03/26 PHP
探讨GDFONTPATH能否被winxp下的php支持
2013/06/21 PHP
php+mysql删除指定编号员工信息的方法
2015/01/14 PHP
php文件操作之小型留言本实例
2015/06/20 PHP
微信红包随机生成算法php版
2016/07/21 PHP
PHP简单实现遍历目录下特定文件的方法小结
2017/05/22 PHP
jQuery验证Checkbox是否选中的代码 推荐
2011/09/04 Javascript
分享几个超级震憾的图片特效
2012/01/08 Javascript
通过js为元素添加多项样式,浏览器全兼容写法
2014/08/30 Javascript
扒一扒JavaScript 预解释
2015/01/28 Javascript
js实现简单锁屏功能实例
2015/05/27 Javascript
JavaScript实现数组随机排序的方法
2015/06/26 Javascript
使用CSS+JavaScript或纯js实现半透明遮罩效果的实例分享
2016/05/09 Javascript
基于JQuery实现图片上传预览与删除操作
2016/05/24 Javascript
js Canvas实现的日历时钟案例分享
2016/12/25 Javascript
JavaScript中在光标处插入添加文本标签节点的详细方法
2017/03/22 Javascript
JS自定义滚动条效果简单实现代码
2020/10/27 Javascript
Vue递归组件+Vuex开发树形组件Tree--递归组件的简单实现
2019/04/01 Javascript
原生JS与JQ获取元素的区别详解
2020/02/13 Javascript
JavaScript进阶(三)闭包原理与用法详解
2020/05/09 Javascript
vue pages 多入口项目 + chainWebpack 全局引用缩写说明
2020/09/21 Javascript
在Python中操作字典之update()方法的使用
2015/05/22 Python
Python实现计算两个时间之间相差天数的方法
2017/05/10 Python
Python中Selenium模拟JQuery滑动解锁实例
2017/07/26 Python
Django给admin添加Action的步骤详解
2019/05/01 Python
Python如何调用外部系统命令
2019/08/07 Python
Python:合并两个numpy矩阵的实现
2019/12/02 Python
Python爬取你好李焕英豆瓣短评生成词云的示例代码
2021/02/24 Python
使用tkinter实现三子棋游戏
2021/02/25 Python
美国最大的存储市场:SpareFoot
2018/07/23 全球购物
.net面试题
2016/09/17 面试题
网络工程师专家职业发展路线
2014/02/14 职场文书
大学生党员个人对照检查材料范文
2014/09/25 职场文书
2016年读书月活动总结范文
2016/04/06 职场文书
游戏开发中如何使用CocosCreator进行音效处理
2021/04/14 Javascript