私はデータテーブルを使用しており、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
を1つだけ更新しようとしましたが、更新されません。
Chromeでは、コンソールログに次のエラーが表示されます:
Uncaught TypeError:undefinedのプロパティ '_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
こちらのドキュメントを確認してください http://datatables.net/api
変更する列(td)を指定する必要があるため、質問は完全ではありませんが、ここで私が試してみます(2番目の列を更新する場合)。
$('#example').dataTable().fnUpdate('Zebra' , $('tr#3692')[0], 1 );
2番目のパラメーターは行で、3番目のパラメーターは列です。
文字列を渡したことに注意してください。
私はこれが好きです:
var myDataTable= $('#myDataTableId').DataTable();
var row = myDataTable.row( '#idRow');
myDataTable.cell(row, 2).data("New Text").draw();
注:
2は列、変更された行内のセルです。
これは私のために働く
var tableRow = $(this).closest('tr').index(); // GET TABLE ROW NUMBER
$('#table').dataTable().fnUpdate('Zebra', [tableRow], 1, false)
列を指定する必要はありません。あなたの問題は、2番目の引数がaoDataインデックスまたは要素であることができるとドキュメントが述べているときに、行IDを使用していることです。
列の数が正しいことを確認してください。ただし、次のようにできるはずです。
$('#example').dataTable().fnUpdate( ['Zebra'], $('#example tr#3692')[0]);