1

我有一个通过 Cold Fusion 输出的动态表。该表创建得很好,但我正在做的一件事是使用 JavaScript 来获取表的 outerHTML 并将其分配给隐藏元素值。问题是隐藏元素值需要每个表最多 20 行,并且原始表的总数可以是可变的。我需要将表的 outerHTML 读入 Javascript 变量并遍历内容并在 20 行后结束表,然后创建一个新表并继续将剩余的行添加到新表中。有什么建议么?

4

2 回答 2

2

因此,您在服务器上有 ColdFusion 输出一个包含许多行的表,并且您想在客户端使用 jQuery 将那个大表切割成许多较小的表,对吗?如果是这样,这是一种方法:

示例:jsfiddle

    var rows = $('#content tr');
    var maxTableSize = 3;
    while (rows.length) {
        var newRows = rows.splice(0, maxTableSize);
        $('<table><tbody>').append(newRows).appendTo('#output');
    }

    $('#content').remove();

无论您的 DOM 是什么,您都需要对其进行调整——这是一个快速示例,表明它可以工作,但您可能需要它的工作方式略有不同,因此如果这不是您想要的,请考虑发布一个 jsfiddle。请注意,重复附加到 DOM 是低效的,因为它会触发大量重绘(浏览器端)。我想让这个例子保持简单——你可以稍后阅读更多关于如何高效操作 DOM 的内容。

最好的办法是修改服务器端代码以根据需要吐出表格!

于 2013-04-18T14:04:55.597 回答
0

我将假设该表是根据查询结果创建的。在这种情况下,对查询中的 currentrow 变量使用取模运算符将使您入门。

于 2013-04-18T14:01:09.387 回答