1

我正在尝试使用 DataTables 制作具有固定标题和列的表。除了页面需要永远加载之外,一切正常。我只有 38 列和 376 行,总共有 14307 个单元格,包括标题。我什至使用了无限滚动,但它没有帮助。我想知道是不是我的编码问题。这是代码。

        $(document).ready( function () {
            var oTable = $('#tbl_name').dataTable( {
                "sScrollY": "590px",
                "sScrollX": "100%",
                "sScrollXInner": "100%",
                "bScrollCollapse": true,
                "bPaginate": false,
                "sDom": 'tS',
                "bSort": false,
                "bSortClasses": false
            } );
            new FixedColumns( oTable, {
                "iLeftColumns": 4,
                "iLeftWidth": 700
            } );
        } );
4

1 回答 1

3

如果您通过 dom 方法构建表(在 HTML 中构建表,然后在其上运行 jQuery),那么本质上这将是一个缓慢的过程。请记住,Datatables 所做的不仅仅是像无限滚动这样的简单脚本。切换到数据驱动选项,例如使用JSON 数据字符串或执行DataTables 允许的完整 AJAX 功能。请记住,Datatables 不仅仅是格式化事物,它还创建了一个可以操作的信息模型,这是 Datatables 的真正力量,许多开发人员甚至都懒得去探索。

我公司当前的应用程序通过一个backbone.js 模型在DataTables 中运行数百个复杂的行,在dom 端完全零延迟。在之前的工作中,我使用流水线 AJAX 数据表来处理具有数百万行的表,并且应用程序运行良好。

当然,请遵循 javascript 的最佳实践,首先将数据表代码放在 HTML 的最后(在 body 标记之前),这样它就不会中断其他页面元素的加载。

于 2013-09-12T14:26:02.680 回答