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 相关文章推荐
15个jquery常用方法、小技巧分享
Jan 13 Javascript
javascript异步处理工作机制详解
Apr 13 Javascript
jQuery的css() 方法使用指南
May 03 Javascript
jQuery实现简单滚动动画效果
Apr 07 Javascript
jQuery.Callbacks()回调函数队列用法详解
Jun 14 Javascript
微信小程序 es6-promise.js封装请求与处理异步进程
Jun 12 Javascript
微信小程序实现图片滚动效果示例
Dec 05 Javascript
node全局变量__dirname与__filename的区别
Jan 14 Javascript
详解从0开始搭建微信小程序(前后端)的全过程
Apr 15 Javascript
使用vue实现HTML页面生成图片的方法
Mar 12 Javascript
详解JS预解析原理
Jun 16 Javascript
原生js实现购物车功能
Sep 23 Javascript
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
ThinkPHP的cookie和session冲突造成Cookie不能使用的解决方法
2014/07/01 PHP
动态表单验证的操作方法和TP框架里面的ajax表单验证
2017/07/19 PHP
PHP面向对象多态性实现方法简单示例
2017/09/27 PHP
php菜单/评论数据递归分级算法的实现方法
2019/08/01 PHP
Javascript 写的简单进度条控件
2008/01/22 Javascript
原生js ActiveXObject获取execl里面的值
2013/11/01 Javascript
使用node.js 制作网站前台后台
2014/11/13 Javascript
对比分析json及XML
2014/11/28 Javascript
jquery.mobile 共同布局遇到的问题小结
2015/02/10 Javascript
JavaScript判断表单提交时哪个radio按钮被选中的方法
2015/03/21 Javascript
jQuery实现新消息在网页标题闪烁提示
2015/06/23 Javascript
JavaScript 中对象的深拷贝
2016/12/04 Javascript
jQuery使用eraser.js插件实现擦除、刮刮卡效果的方法【附eraser.js下载】
2017/04/28 jQuery
详解webpack+express多页站点开发
2017/12/22 Javascript
简单介绍react redux的中间件的使用
2018/04/06 Javascript
JS+HTML5 Canvas实现简单的写字板功能示例
2018/08/30 Javascript
使用Sonarqube扫描Javascript代码的示例
2018/12/26 Javascript
ES5新增数组的实现方法
2020/05/12 Javascript
[59:00]DOTA2-DPC中国联赛 正赛 Ehome vs PSG.LGD BO3 第一场 3月7日
2021/03/11 DOTA
跟老齐学Python之Python安装
2014/09/12 Python
python通过装饰器检查函数参数数据类型的方法
2015/03/13 Python
速记Python布尔值
2017/11/09 Python
python3监控CentOS磁盘空间脚本
2018/06/21 Python
纯用NumPy实现神经网络的示例代码
2018/10/24 Python
python3 自动识别usb连接状态,即对usb重连的判断方法
2019/07/03 Python
Python Pandas实现数据分组求平均值并填充nan的示例
2019/07/04 Python
在交互式环境中执行Python程序过程详解
2019/07/12 Python
村庄绿化方案
2014/05/07 职场文书
金融专业毕业生自荐信
2014/06/26 职场文书
英语自我介绍演讲稿
2014/09/01 职场文书
2014年节能工作总结
2014/12/18 职场文书
春节慰问信范文
2015/02/15 职场文书
2015年实习班主任工作总结
2015/04/23 职场文书
SQL Server——索引+基于单表的数据插入与简单查询【1】
2021/04/05 SQL Server
教你怎么用Python生成九宫格照片
2021/05/20 Python
SpringBoot详解整合Redis缓存方法
2022/07/15 Java/Android