使用时只需设置两个DIV,一个用来存放表格,一个用来放置分页栏
表格在使用时需指定5个参数,分别为:
存放表格的DIV类名
行数
列数
表头名目
表格的具体内容
分页特效在使用时需指定3个参数,分别为:
存放分页栏的DIV的ID
存放表格的类名
每页显示的条目数量
PS:两个插件都是推主本人写的,所以比较简单,也容易理解和修改,也很可能有BUG,欢迎指正^_^!
// 获取实际输入的内容项
1 2 3 | for ( var real_row = 0; real_row < td.length; real_row += col - 1) { td_arr.push(td.slice(real_row, real_row + col)); } |
table.js 实际输入这里 需要这样改 不然渲染的有问题
回复一脸懵逼啊。LZ这坑有点大的。评论中修改的setContent方法,少数据运行一点问题都没有。但是数据量大的时候就会卡死。
内容置空的处理中,多次循环了。后面内容的赋值,不需要在构造html的循环里面。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | // 内容置空 for ( var y = 0; y < row; y++) { var tr = $( "<tr>" ); $(tr).appendTo(table); for ( var x = 0 + (col * y); x < col * (y + 1); x++) { $( "<td>" + " " + "</td>" ).appendTo(tr); } $( "</tr>" ).appendTo(table); } // 设置序号 for ( var i = 0; i < row; i++) { $( "#re tr:eq(" + i + ") td:eq(0)" ).text(i + 1); } // 设置内容 for ( var r = 0; r < td_arr.length; r++) { for ( var c = 1; c <= col; c++) { $( "#re tr:eq(" + r + ") td:eq(" + c + ")" ).text(td_arr[r][c - 1]); } } |
请问一下,
1 | $(document).Table( '.table_body' , 're' ,51,4,[ '序号' , '姓名' , '年龄' , '出生地' ],[[,,],[,,],[,,]]); |
中,最后添加内容这里,怎么修改内容,你的js里面
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | setContent = function () { var td = new Array(); // $.each(content, function(i, item){ // $.each(item,function(j,val){ // td.push(val); // }); // }); for ( var y = 0; y < row; y++) { var tr = $( "<tr>" ); $(tr).appendTo(table); for ( var x = 0 + (col * y); x < col * (y + 1); x++) { $( "<td>" + " " + "</td>" ).appendTo(tr); } $( "</tr>" ).appendTo(table); // 璁剧疆搴?? for ( var i = 0; i < row; i++) { $( "#re tr:eq(" + i + ") td:eq(0)" ).text(i + 1); } } }; |
怎么修改呢?
感谢提问,刚刚发现这个版本的内容设置的地方有BUG,在js中改正如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | setContent = function () { var td = new Array(); var td_arr = new Array(); $.each(content, function (i, item) { $.each(item, function (j, val) { td.push(val); if (td[x] == null ) td[x] = " " ; }); }); // 获取实际输入的内容项 for ( var real_row = 0; real_row < td.length; real_row += col) { td_arr.push(td.slice(real_row, real_row + col)); } // 内容置空 for ( var y = 0; y < row; y++) { var tr = $( "<tr>" ); $(tr).appendTo(table); for ( var x = 0 + (col * y); x < col * (y + 1); x++) { $( "<td>" + " " + "</td>" ).appendTo(tr); } $( "</tr>" ).appendTo(table); // 设置序号 for ( var i = 0; i < row; i++) { $( "#re tr:eq(" + i + ") td:eq(0)" ).text(i + 1); } // 设置内容 for ( var r = 0; r < td_arr.length; r++) { for ( var c = 1; c <= col; c++) { $( "#re tr:eq(" + r + ") td:eq(" + c + ")" ).text(td_arr[r][c - 1]); } } } }; |