获取数据表中的嵌套表行数据

时间:2018-04-25 11:57:21

标签: jquery datatables

我正在处理数据表,我需要在按钮点击时创建一个嵌套表。到目前为止我已经完成了这项工作但无法获取嵌套数据表行数据。

我使用了this示例。这是我到目前为止所获得的行数据。

oInnerTable = $('#opiniondt_' + iTableCounter).dataTable({
        data: newArr, 
        autoWidth: true, 
        deferRender: true, 
        info: false, 
        lengthChange: false, 
        ordering: false, 
        paging: false, 
        scrollX: false, 
        scrollY: false, 
        searching: false, 
        columns: [
            {   
                className:      'inner-details-control',
                orderable:      false,
                data:           null,
                defaultContent: '' 
            },
            {"mData": "datasetId"}, 
            {"mData": "name"},
            {"mData": "datasetType", "visible": false},
            {"mData": "parentDatasetID", "visible": false},
            {"mData": "description", "visible": false},
            {"mData": "totalRecords"},
            {"mData": "creationTimeStr"},
            {"mData": "endTimeStr"},
            {bSortable: false,
                mRender: function (o) {return '<button class="btn btn-blue innerDatasetDetailButton" id="innerDatasetDetailButton"><i class="fa fa-check"></i></button>'; }
            }
        ],
        order: [[1, 'asc']]
    });

$('#opiniondt_' + iTableCounter + ' tbody').unbind().on("click", "td.inner-details-control", function () {
        var tr = $(this).closest('tr');
        var row = oInnerTable.row( tr );
        var rowData = oInnerTable.row( tr ).data();  
        iTableCounter = iTableCounter + 1;

        if (row.child.isShown()) {
            row.child.hide();
            tr.removeClass('shown');
        }
        else {
            //createInnerTable(tr, row, rowData);
        }
   });

我已使用oInnerTable初始化了内部表,但它在oInnerTable

上给出了错误
  

TypeError:oInnerTable.row不是函数

可以任何人告诉我如何从嵌套数据表中获取行数据?

1 个答案:

答案 0 :(得分:0)

初始化表格时需要使用('#opiniondt_' + iTableCounter).DataTable(...) - 注意案例的不同之处。如果使用dataTable(...),则会在oInnerTable中返回一个jQuery对象,而不是发出row()命令所需的DataTables API对象。