我正在使用 jQuery DataTables构建一个可以使用以下脚本添加和删除行的表:
添加行:
var row_count = 1;
$(document).ready(function() {
$('#my_table').dataTable();
} );
function fnClickAddRow() {
$('#my_table').dataTable().fnAddData( [
"<input type=\"text\" name=\"fieldA\"" + row_count + " value=\"\" />",
"<input type=\"text\" name=\"fieldB\"" + row_count + " value=\"\" />",
// ...
] );
row_count++;
}
如本例所示。
然后我使用另一个脚本添加行选择和删除:
var oTable;
$(document).ready(function() {
/* Add a click handler to the rows - this could be used as a callback */
$("#my_table tbody tr").click( function( e ) {
if ( $(this).hasClass('row_selected') ) {
$(this).removeClass('row_selected');
}
else {
oTable.$('tr.row_selected').removeClass('row_selected');
$(this).addClass('row_selected');
}
});
/* Add a click handler for the delete row */
$('#delete').click( function() {
var anSelected = fnGetSelected( oTable );
if ( anSelected.length !== 0 ) {
oTable.fnDeleteRow( anSelected[0] );
}
} );
/* Init the table */
oTable = $('#my_table').dataTable( );
} );
/* Get the rows which are currently selected */
function fnGetSelected( oTableLocal )
{
return oTableLocal.$('tr.row_selected');
}
添加行函数 (fnClickAddRow()) 与 HTML 编码的行上的删除函数一样工作正常。但是,添加到表对象的行是不可选择的,因此不可删除。我需要向我的数据数组添加什么以使添加的行可选择?