javascript - 在这么多行之后结束表并开始新表

标签 javascript jquery coldfusion

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

最佳答案

所以你在服务器上有 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 高效操作的更多信息。

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

关于javascript - 在这么多行之后结束表并开始新表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16084298/

相关文章:

jQuery .slideToggle 在 Chrome 中完美运行,在 Firefox 中不太完美

jquery - LazyLoad 图像在滚动后才会出现

ColdFusion 9.0.1 修补程序

javascript - 如何通过动态组合多个其他 json 行中的元素来创建新的 json 行

javascript - 如何在javascript计算器中显示消息而不是警报,如下:

javascript - jQuery Custom Accordion - 关闭当前打开的部分

javascript - 如何将我的 DIV 放置在一个独特的网格中?

javascript - dropzonejs 手动删除服务器上的文件,一次一个

coldfusion - CFBuilder 2 插入结束标记不起作用

javascript - 从 HTML 页面连接到 Coldfusion Websocket