datatables列数

Ast*_*aut 11 javascript jquery datatables

如何获取数据表中的列数?

我可以通过执行oTable.fnGetData().length来获取行数但是如何获取列数以便我可以像这样迭代每个单元格:

var numColumns = //How to get the number of columns?
    for(var r=0;r<oTable.fnGetData().length;r++){
        for(var c=0;c <= numColumns;c++){
            console.log("[R]: "+r+ "[C]: "+c+ " data: "+oTable.fnGetData(r,c));   
        }
    }
Run Code Online (Sandbox Code Playgroud)

Gyr*_*com 13

得到列数

  • DataTables 1.9+

    // Get number of all columns
    var numCols = $('#example').dataTable().fnSettings().aoColumns.length;
    
    // Get number of visible columns
    var numCols = $('#example thead th').length;
    
    Run Code Online (Sandbox Code Playgroud)

    请参阅此jsFiddle进行演示.

  • DataTables 1.10+

    // Get number of all columns
    var numCols = $('#example').DataTable().columns().nodes().length;
    
    // Get number of visible columns
    var numCols = $('#example').DataTable().columns(':visible').nodes().length;
    
    // Get number of visible columns (alternative way)
    var numCols = $('#example thead th').length;
    
    Run Code Online (Sandbox Code Playgroud)

    请参阅此jsFiddle进行演示.

每个细胞都有效

  • DataTables 1.10.6+

    $('#example').DataTable().cells().every( function (rowIndex, colIndex) {
        var data = this.data();
    
        console.log("Row:", rowIndex, "Col:", colIndex, "Data:", data);
    });
    
    Run Code Online (Sandbox Code Playgroud)


c0d*_*nja 8

fnGetData可用于获取单个数据行.因此,您只需检查数据行的长度即可获得列数.

例:

oTable.fnGetData(someRowNumber).length;
Run Code Online (Sandbox Code Playgroud)

以上将返回该数据行中的列数.