var anSelected = fnGetSelected(oTable)未执行

时间:2012-06-05 12:52:28

标签: jquery datatables

var oTable = $('#posGridView').dataTable( {
"bPaginate": false,
"bFilter": false,
"bSort": false,
"bInfo": false,
"oLanguage": {
"sZeroRecords": "",
"sEmptyTable": ""
}

} );

$("#posGridView tbody").click(function(event) {
$(oTable.fnSettings().aoData).each(function (){
$(this.nTr).removeClass('row_selected');
});
$(event.target.parentNode).addClass('row_selected');
});

上面的代码工作正常,当我选择行时,它突出显示。但是当我按下删除按钮时,所选行不会被删除。

$('#delete').click( function() {
var anSelected = fnGetSelected( oTable );
oTable.fnDeleteRow( anSelected[0] );
} );

当我发出警报(anSelected)时,我才知道语句var anSelected = fnGetSelected(oTable);没有执行。

1 个答案:

答案 0 :(得分:0)

有几件事需要考虑

  • 您在$('#delete')上按ID进行选择。到目前为止,我知道你有一个按行删除按钮,所以你将有几个具有相同ID的元素。这是不允许的。将一个css类添加到删除按钮(或使用现有的)并选择如下$('#posGridView .delete')

  • 如果您要动态添加行,则需要使用on方法附加点击事件。否则,新添加的行将不具有单击处理程序。代码可能是这样的$('#posGridView').on('click', '.delete', function(){...})