Jquery datatable的详细使用
来源:互联网 发布:好听的网络对唱情歌 编辑:程序博客网 时间:2024/06/12 21:35
最近公司项目用到表格,又发现jquery有好几个表格插件很好用,就选了比较简单的datatable来用,也学习了一番,跟大家分享一下使用的心得。
上面是效果图,使用datatable要先引入包含js和css的文件,这个是datatable的官方文档,https://datatables.net/英文的,小伙伴可以用谷歌翻译成中文 ,里面所有的api函数什么的都有,慢慢琢磨哈哈! 关于参数也可以百度datatable 参数就有挺多讲解的。
在右边的这两个就是js和css文件啦,下载后引入即可。
接下来进入正文:
初始化表格:
oTable1 = $('#sample-table-2').DataTable({ "sDom": '<"top"><"col-sm-12"t<"col-xs-5"li><"col-xs-7"pr>>', //表格控件布局设置 t/table p/page r/processing l/分页控件 i/总页数 "bProcessing":true,//加载进度 "sAjaxDataProp": "data",//数据项名称 "sAjaxSource": "http://123.56.93.33:8088/kiunionSer/ws/v1.0/vehicleBaseInfo/searchByEnterprise?enterpriseId=1",//服务器 "bServerSide": true,//启用服务器调试 "bAutoWidth": true,//自动宽度 "aLengthMenu": [10, 20, 30, 40, 50, 100],//分页设置});
一:请求表格数据,方法有两种:
1:自定义Array数据测试:
刚使用datatable可以用这个测试,自定义一串Array数据 例如:
testData=[ ["2","23","2342"], ["2","23","2342"], ["2","23","2342"] ] oTable1 = $('#sample-table-2').DataTable({ "aaData":testData, });
效果:
还有自定义json数据:
var testData=[ { "UserID": 671, "UserName": "Cramer, Katherine", "CommentsColumn": "Test record",}, { "UserID": 671, "UserName": "Cramer, Katherine", "CommentsColumn": "Test record",}, { "UserID": 671, "UserName": "Cramer, Katherine", "CommentsColumn": "Test record",}, ] oTable1 = $('#sample-table-2').DataTable({ "aaData":testData, //这里要自定义列 json数组必须,即定义每一格应该装什么数据 "aoColumns": [ {mData: 'UserID',}, {mData: 'UserName'}, {mData: 'CommentsColumn'}, })];
显示效果:
应该很清晰明了了吧
2:ajax请求服务器数据
最开始的效果就是Ajax请求服务器数据的方法,我这里服务器返回的数据是json格式的
可以看到我这里data的value才是我要来填充表格的jsonArray,格式跟上面json数组格式是一样的,
(1)设置sAjaxSource 服务器地址, 然后设置sAjaxDataProp 数据项名称(我这里是data),
(2)注意服务器调试”bServerSide”: true,这个属性一定要加!
(3)自定义列 “aoColumns”: [], “bServerSide”: true,//启用服务器调试
上面就是ajax请求的最基本要设置的了,表里有数据之后呢我们就看如何往里面动态加数据和修改删除功能。
二:增删改查功能
1)增加:
我这里思路是将要增加的数据转为json数组,然后发送到服务器,服务器添加数据到数据库再返回json给我,如果json中的sueecss为true,我就刷新一下表格,即 oTable1.fnFilter(); 数据就增加了。
点击新建按钮 弹出一个dialog
值得提的是 这里传输数据我用了两种方法
(1),jquery的遍历这个dialog里面的全部input,获取他们的值
$("#dialog input")each(){ name=$(this).attr("name");//每个input的name设置为json的键 addData[name] =$(this).val(); }
(2),通过serializeObject直接获取全部输入框的值,这个函数会将input的name和value拼接成字符串。
- dialog要用表单包裹起来;
- 自定义serializeObject(),不定义的话格式不是json,
$.fn.serializeObject = function() { console.log("serializeObject"); var o = {}; var a = this.serializeArray(); $.each(a, function() { if (o[this.name]) { if (!o[this.name].push) { o[this.name] = [o[this.name]]; } o[this.name].push(this.value || ''); } else { o[this.name] = this.value || ''; } }); return o; };
var addData=$('#editForm').serializeObject();
这样就能取到所有数据了,是不是很方便呢
ajax上传数据:
$.ajax({ //提交数据的类型 POST GET type: "GET', //提交的网址 url: url, //提交的数据 data:JSON.stringify(addData), contentType:"application/json", //提交给服务器的数据类型 //返回数据的格式 datatype: "json",//"xml", "html", "script", "json" //成功返回之后调用的函数,在这里刷新一下表格 success: function (data) { $('#sample-table-2').dataTable().fnDraw(false); }, })
增加到这里就差不多了,如果想到要加的我会及时更新的。
2)修改:
- Jquery datatable的详细使用
- Jquery.DataTable的基本使用
- java中jquery datatable表格的使用
- [总结] jQuery的datatable插件 使用 问题
- JQUERY DATATABLE中TABLETOOLS的使用
- JQuery表格插件DataTable的使用
- 使用jQuery Datatable 遇到的问题
- jQuery dataTable 个人使用的一点心得
- 使用jquery dataTable
- 使用jquery dataTable
- 使用jquery dataTable
- jquery datatable使用
- jQuery dataTable使用
- jQuery dataTable使用详解
- 使用jquery dataTable
- Jquery datatable使用示例
- Jquery.DataTable使用
- JQuery DataTable 使用教程
- sql运用积累,001
- 使用C#编写的一个定时关机程序
- ExtJS4中initComponent和constructor的区别
- 关于php必须谨慎处理变量和调用内置函数的几点总结,否则会带来安全方面的灾难
- 如何从技术牛人升阶为管理牛人
- Jquery datatable的详细使用
- 用 Delphi 创建服务程序(Service)
- Struts-struts-config.xml配置详解
- Linux下PHP加速器APC的安装与配置
- foreach 语句的使用
- C++ 学习-记录集
- HcdGuideView让你为你的app添加一个漂亮的启动页变得简单。
- 正则表达式
- opencv ubuntu 安装记录