jquery中datatables插件学习笔记(转载)
2012-09-22 16:09 C#与.NET探索者 阅读(299) 评论(0) 编辑 收藏 举报DataTables是一个jQuery的表格插件。这是一个高度灵活的工具,依据的基础逐步增强,这将增加先进的互动控制,支持任何HTML表格。官方网站及其下载:http:/www.datatables.net
下载的1.6版本里面内容很全面。
自动分页处理
即时表格数据过滤
数据排序以及数据类型自动检测
自动处理列宽度
可通过CSS定制样式
支持隐藏列
易用
可扩展性和灵活性
国际化
动态创建表格
免费的
使用:
首先。
- <title>DataTables example</title>
- <style type="text/css" title="currentStyle">
- @import "http://www.cnblogs.com/media/css/demo_page.css";
- @import "http://www.cnblogs.com/media/css/demo_table.css";
- @import "../examples_support/themes/smoothness/jquery-ui-1.7.2.custom.css";
- </style>
- <script type="text/javascript" language="javascript" src="http://www.cnblogs.com/media/js/jquery.js"></script>
- <script type="text/javascript" language="javascript" src="http://www.cnblogs.com/media/js/jquery.dataTables.js"></script>
- <script type="text/javascript" charset="utf-8">
引入js和css文件。可以在demo里复制。注意路径地址。
第二步
- <script type="text/javascript" charset="utf-8">
- $(document).ready(function() {
- $('#example').dataTable( {
- "oLanguage": {
- "sUrl": "/SSS/dataTables/de_DE.txt"
- },
- "bStateSave": true,
- //"bJQueryUI": true, //使用jqueryui 。我用的时候显示的不是很好
- "sPaginationType": "full_numbers"//分页
- } );
- } );
- </script>
- </head>
- <body id="dt_example">//此处为body的id
- <div id="container" align="center">//*div 里是 table ,table包括thead等,最好按此格式写*
- <h1>物品种类管理</h1>
- <div id="demo">
- <table cellpadding="5" cellspacing="0" border="1" class="display" id="example" align="center">//id 别忘了
- <thead>
- <tr>
- <th>物品编号</th>
- <th>物品名称</th>
- <th>物品单位</th>
- <th>编辑状态</th>
- <th>随便</th>
- </tr>
- </thead>
- <tr class="gradeX">//此处可以是gradeA ,gradeX 等,但是gradeB 隔行换色 效果很好
- <td>Trident</td>
- <td>Internet
- Explorer 4.0</td>
- <td>Win 95+</td>
- <td class="center">4</td>
- <td class="center">X</td>
- </tr>
- <tr class="gradeC">
- <td>Trident</td>
- <td>Internet
- Explorer 5.0</td>
- <td>Win 95+</td>
- <td class="center">5</td>
- <td class="center">C</td>
- </tr>
- <tr class="gradeA">
- <td>Trident</td>
- <td>Internet
- Explorer 5.5</td>
- <td>Win 95+</td>
- <td class="center">5.5</td>
- <td class="center">A</td>
- </tr>
- </tbody>
- <tfoot>
- </tfoot>
- </table>
- </div>
- </div>
上面就能创建出如图的效果, 分页。排序。等等。
最后讲讲 各各属性(添加的位置知道吧 O(∩_∩)O~)
- //$(document).ready(function() {
- //$('#example').dataTable( {//加载
- //"bPaginate": true,//分页按钮
- //"bLengthChange": true,//每行显示记录数
- //"bFilter": true,//搜索栏
- //"bSort": true,//排序
- //"bInfo": true,//Showing 1 to 10 of 23 entries 总记录数没也显示多少等信息
- //"bAutoWidth": true } );
- //} );
- //$(document).ready(function() {
- //$('#example').dataTable( {
- //"aaSorting": [[ 4, "desc" ]]//
给列表排序 ,第一个参数表示数组 。4 就是css grade那列。第二个参数为 desc或是asc
- //} );
- //} );
- //$(document).ready(function() {
- //$('#example').dataTable( {
- //"aoColumns": [
- // /* Engine */ null, //默认
- // /* Browser */ null,
- // /* Platform */ { "bSearchable": false, //不可参与搜索
- // "bVisible": false },//不可见
- // /* Version */ { "bVisible": false },//不可见
- // /* Grade */ null
- //] } );
- //} );
- //$(document).ready(function() {
- //$('#example').dataTable({
- //});
- //} );
- //$(document).ready(function() {
- //$('#example').dataTable( {
- //"sDom": '<"top"i>rt<"bottom"flp<"clear">'//这段是自定义布局没搞明白挺复杂的。 * l - Length changing * f - Filtering input* t - The table!* i - Information* p - Pagination* r - pRocessing* < and > - div elements* <"class" and > - div with a class * Examples: <"wrapper"flipt>, <lf<t>ip>
- //} );
- //} );
- //$(document).ready(function() {
- // $('#example').dataTable( {
- // "bStateSave": true //保存状态到cookie *************** 很重要 , 当搜索的时候页面一刷新会 导致搜索的消失。使用这个属性就可避免了
- //} );
- //} );
- //$(document).ready(function() {
- //$('#example').dataTable( {
- //"sPaginationType": "full_numbers" //分页,一共两种样式 另一种为two_button 是datatables默认
- //} );
- //} );
- //$(document).ready(function() {
- //$('#example').dataTable( { //分页信息 不是很难理解。
- //"oLanguage": {
- //"sLengthMenu": "Display _MENU_ records per page",
- //"sZeroRecords": "Nothing found - sorry",
- //"sInfo": "Showing _START_ to _END_ of _TOTAL_ records",
- //"sInfoEmtpy": "Showing 0 to 0 of 0 records",
- //"sInfoFiltered": "(filtered from _MAX_ total records)"
- //}
- //} );
- //} )
- $(document).ready(function() {
- oTable = $('#example').dataTable({
- "bJQueryUI": true, //可以添加 jqury的ui theme 需要添加css
- "sPaginationType": "full_numbers"
- });
- } );
默认的语言是英文的 当然可以国际化:
"sUrl": "/SSS/dataTables/de_DE.txt" 添加个国际化的文件就可以。 名字随便 路径对了就可以。我写的国际化文件内容如下,可以直接复制到txt中使用.
- {
- "sProcessing": "Bitte warten...",
- "sLengthMenu": "显示_MENU_条 ",
- "sZeroRecords": "没有您要搜索的内容",
- "sInfo": "从_START_ 到 _END_ 条记录——总记录数为 _TOTAL_ 条",
- "sInfoEmpty": "记录数为0",
- "sInfoFiltered": "(全部记录数 _MAX_ 条)",
- "sInfoPostFix": "",
- "sSearch": "搜索",
- "sUrl": "",
- "oPaginate": {
- "sFirst": "第一页",
- "sPrevious": " 上一页 ",
- "sNext": " 下一页 ",
- "sLast": " 最后一页 "
- }
- }