我正在创建一个用于对表进行排序和分页的 jquery 插件(我知道它们有很多,我尝试了很多,但到目前为止没有一个适合我的需要。)
无论如何,我的页面上有很多表格,并通过以下方式调用我的插件:
$('.data-table').tableSorterTwo();
这是插件代码:
(function($)
{
$.fn.tableSorterTwo = function()
{
return this.each(function()
{
countRows($(this));
hideRows($(this));
});
};
function countRows(element)
{
console.log($(element).find('tbody tr').size());
}
function hideRows(element)
{
$(element).find('tbody tr').hide().slice(0, 5).show();
}
})(jQuery);
奇怪的是 size 和 slice 的工作出乎意料,我无法确定。
我有这个有 6 行的表;countRows
返回 18。这发生在所有表中。结果是行数乘以 3。这是为什么呢?
结果hideRows
出乎意料。我想显示表格的前 5 行;但现在(对于每个表)只显示前 2 行。将 5 更改为 10 会导致显示 4 行。
是我的错误吗?现在搞砸了一段时间,但我现在完全迷失了,非常欢迎每一个帮助/提示/建议!