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代码
Mar 05 Javascript
Javascript中eval函数的使用方法与示例
Apr 09 Javascript
Array.prototype.slice.apply的使用方法
Mar 17 Javascript
Knockout text绑定DOM的使用方法
Nov 15 Javascript
jQuery基础知识小结
Dec 22 Javascript
JS控制弹出悬浮窗口(一览画面)的实例代码
May 30 Javascript
利用jsonp跨域调用百度js实现搜索框智能提示
Aug 24 Javascript
javascript事件的绑定基础实例讲解(34)
Feb 14 Javascript
Bootstrap 网格系统布局详解
Mar 19 Javascript
Vue.js实现实例搜索应用功能详细代码
Aug 24 Javascript
基于vue的验证码组件的示例代码
Jan 22 Javascript
Nuxt v-bind绑定img src不显示的解决
Dec 05 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
php简单操作mysql数据库的类
2015/04/16 PHP
PHP简单日历实现方法
2016/07/20 PHP
laravel5.1 ajax post 传值_token示例
2019/10/24 PHP
js监听输入框值的即时变化onpropertychange、oninput
2011/07/13 Javascript
Javascript弹出窗口的各种方法总结
2013/11/11 Javascript
使用javascript提交form表单方法汇总
2015/06/25 Javascript
基于javascript编写简单日历
2016/05/02 Javascript
JS控制静态页面传递参数并获取参数应用
2016/08/10 Javascript
Javascript json object 与string 相互转换的简单实现
2016/09/27 Javascript
新手学习前端之js模仿淘宝主页网站
2016/10/31 Javascript
es6中的解构赋值、扩展运算符和rest参数使用详解
2017/09/28 Javascript
微信小程序如何获取用户信息
2018/01/26 Javascript
原生JS实现前端本地文件上传
2018/09/08 Javascript
详解离线安装npm包的几种方法
2018/11/25 Javascript
Element UI框架中巧用树选择器的实现
2018/12/12 Javascript
富文本编辑器vue2-editor实现全屏功能
2019/05/26 Javascript
js实现右键弹出自定义菜单
2020/09/08 Javascript
深入理解python try异常处理机制
2016/06/01 Python
Python实现正则表达式匹配任意的邮箱方法
2018/12/20 Python
OpenCV-Python 摄像头实时检测人脸代码实例
2019/04/30 Python
Python多线程及其基本使用方法实例分析
2019/10/29 Python
Python 面向对象静态方法、类方法、属性方法知识点小结
2020/03/09 Python
在Anaconda3下使用清华镜像源安装TensorFlow(CPU版)
2020/04/19 Python
Python日志打印里logging.getLogger源码分析详解
2021/01/17 Python
世界上最伟大的马产品:Equiderma
2020/01/07 全球购物
广州御银科技股份有限公司试卷(C++)
2016/11/04 面试题
医学检验专业个人求职信范文
2013/12/04 职场文书
乡镇挂职心得体会
2014/09/04 职场文书
心灵捕手观后感
2015/06/02 职场文书
2015中秋节晚会开场白
2015/07/30 职场文书
我爱我班主题班会
2015/08/13 职场文书
《观潮》教学反思
2016/02/17 职场文书
九年级历史教学反思
2016/02/19 职场文书
vue中三级导航的菜单权限控制
2021/03/31 Vue.js
canvas绘制折线路径动画实现
2021/05/12 Javascript
科学家测试在太空中培育人造肉,用于未来太空旅行
2022/04/29 数码科技