【问题标题】:jQuery DataTables - Access all rows datajQuery DataTables - 访问所有行数据
【发布时间】:2015-11-03 03:24:36
【问题描述】:

我正在使用 jQuery DataTables 并希望在单击标题复选框时复制所有行(保存在 JavaScript 数组中)。

我想找到 jQuery DataTables 存储剩余行页面的 HTML 的位置,所以我可以通过 JavaScript 导航,然后在那里检查或将属性检查设置为 true。

类似这样的。

其他信息:

  • 我使用来自 ajax 源 (serverside:false) 的数据,所有数据都返回。
  • 当我单击第 1 页时,所有行都保持选中状态。

【问题讨论】:

    标签: javascript jquery html ajax datatables


    【解决方案1】:

    解决方案

    many methods 可用于此目的。您可以使用rows().data() 获取所选行的数据。

    例子:

    var table = $('#example').DataTable();
    
    var data = table
        .rows()
        .data();
    
    alert( 'The table has ' + data.length + ' records' );
    

    演示

    有关代码和演示,请参阅this jsFiddle

    【讨论】:

    • 这也是访问 jQuery DataTables 中数据的好方法,但我想要 jQuery DataTables 生成的 html..,我在答案中找到了它..,无论如何谢谢!
    • 你也可以使用table.rows().nodes().to$()来获取所有行节点的jQuery集合。您可以稍后迭代此集合并获取每一行的 HTML。请参阅to$() 了解更多信息。
    • 感谢您的简短回答,如果您发布已编辑的答案,我会将其标记为解决方案。
    • @janmvtrinidad,如果您需要节点及其 HTML 内容,您的答案会更好。您也可以接受自己的答案。
    • @RameshPareek,然后使用table.columns(0).data()
    【解决方案2】:

    我使用此代码通过 jQuery DataTables 找到生成的元素,并且可以复制在分页 DataTables 时隐藏的整个 tr 元素。

    $('#example').DataTable().rows().iterator('row', function(context, index){
        var node = $(this.row(index).node()); 
        //node.context is element of tr generated by jQuery DataTables.
    });
    

    【讨论】:

    • 我怎样才能让它遍历行的每一列并将其与上一行的同一列进行比较?
    • 基本上你可以通过$(this.row(index - 1).node())中的-1来访问前一行。您可以从结果中进行比较
    【解决方案3】:

    如果你这样做:

    $('#table').DataTable().rows().data(); 
    

    你会得到很多不必要的数据。

    如果你只想要表格数据,你可以这样做:

    $('#table').DataTable().rows().data().toArray();
    

    【讨论】:

      【解决方案4】:

      使用

      tableObject.rows().data() 
      

      将返回表中的所有数据。

      【讨论】:

        【解决方案5】:

        设置pageLength:

        $('#example').dataTable( {
          "pageLength": 50
        } );
        

        【讨论】:

        • 您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-02-06
        • 2015-05-18
        • 1970-01-01
        • 2016-02-04
        • 1970-01-01
        • 2021-05-03
        相关资源
        最近更新 更多