我正在使用数据表并在tr
table
元素
<tr class="gradeA even row_selected" id="3692">
<td class=" sorting_1">3692</td>
<td class="">koza</td>
<td class="" title="10:12:30">2013-12-31</td>
<td class="">2014-02-06</td>
<td class="">FULL packet</td>
<td class="">NONE</td>
<td class="">Name</td>
</tr>
我想使用td
函数更新第1和第4个fnUpdate
元素。我曾尝试仅更新一个td
,但不会更新
在Chrome中,控制台日志我收到此错误:
未捕获的TypeError:无法设置未定义的属性'_aData'
以下是我的尝试:
// dynamically update row
$('#example').dataTable().fnUpdate( ['Zebra'], parseInt('3692'));
3692
是td
元素的ID,用于了解我需要更新哪一行,zebra
是要更改的值。我知道我没有包括要更新的单元格,但我不知道该怎么做。在datatables api上,给出了以下示例:
oTable.fnUpdate( ['a', 'b', 'c', 'd', 'e'], 1 ); // Row
答案 0 :(得分:13)
请查看此处的文档http://datatables.net/api
您的问题尚未完成,因为您需要指定要修改的列(td),但这是我要尝试的内容(假设您要更新第二列)。
$('#example').dataTable().fnUpdate('Zebra' , $('tr#3692')[0], 1 );
第二个参数是行,第三个是列。
请注意,我传入了一个字符串。
答案 1 :(得分:3)
我更喜欢这个:
var myDataTable= $('#myDataTableId').DataTable();
var row = myDataTable.row( '#idRow');
myDataTable.cell(row, 2).data("New Text").draw();
<强> 注意:的强>
2是列,修改行内的单元格。
答案 2 :(得分:1)
这对我有用
var tableRow = $(this).closest('tr').index(); // GET TABLE ROW NUMBER
$('#table').dataTable().fnUpdate('Zebra', [tableRow], 1, false)
答案 3 :(得分:0)
您无需指定列。您的问题是,当doc声明第二个参数可以是aoData索引或元素时,您正在使用行ID。
确保您的列数正确无误,但您应该可以这样做:
$('#example').dataTable().fnUpdate( ['Zebra'], $('#example tr#3692')[0]);
答案 4 :(得分:-1)
尝试:
$('#datatable').dataTable().fnUpdate(result, $('[data-id=' + idvalue + ']'), 8 );
这是更新列值而不出错的最佳方法,并使用data-id="row id value"
添加表格行....它可以正常工作。