jQuery DataTable - 如何在不创建新 DataTable 对象的情况下设置 aoColumnDefs?

jQuery DataTable - How to set aoColumnDefs without creating a new DataTable object?

我知道如何使用以下方法设置列名:

var table = $('#'+String(response.chartID[i])).DataTable({
                                stateSave: true,
                                aoColumnDefs: aryJSONColTable,
                                processing: true,
                                serverSide: true,
                                bDestroy: true,
                                "scrollX": true,}))

但是可以在 DataTable 对象中设置 oaColumnDef 吗?

例如在特定回调上,我可以将 oaColumnDef 设置为另一组名称。

我最接近的是在任何回调中,我试过了

$(this).dataTable().fnSettings().aoColumns 

获取列作为对象

但是可以重新设置吗?

我也试过了

$(this).dataTable().aoColumnDefs = AnotherArray 

不过,这好像不行。

谁能给我指出正确的方向?

谢谢

您可以更新您的数据表,根据您发布的代码,您使用的是旧版本。

在新版本中,您有一个列函数,可以通过选择器获取列。

勾选API doc

假设上面声明的变量table

如果您想更新特定列

table.fnUpdate("newChangedValue", row-index , column-index);  

如果你想更新整行

oTable.fnUpdate( ['column1Value', 'column2Value', 'column3Value', ... ], rowIndex );

添加新记录

table.fnAddData( [  column1Value, column2Value, column3Value.... ]);        

获取点击行索引

$("#tblchargeRate tbody").delegate("tr", "click", function() {
    var iPos = table.fnGetPosition( this );
});

var aData = table.fnGetData( iPos );

aData[0] 是 datatable 中的第一列元素

注意: 处理索引值,即数据中的第一行 table 将位于 0 索引