使用AJAX删除表行

时间:2012-05-26 22:33:27

标签: php javascript jquery ajax datatables

我使用AJAX从jQuery Datatable中删除特定的行。这些行在第10列中的值为0(如果我们从0开始计数)。您可以在下面看到我的代码。出于某种原因,它不会删除任何行。我检查了aData [10] =>的值在某些行中它定义为等于0。

     $(document).ready(function(){
          $('#newspaper-b').dataTable({
          "sPaginationType":"full_numbers",
          "aaSorting":[[4, "asc"]],
          "aoColumns": [null,null,null,null,null,null,null,null,null,null,
                        {"bSearchable": true, "bVisible": false},null,null],
          "bJQueryUI":true,
          'fnRowCallback': function(nRow, aData, iDisplayIndex, iDisplayIndexFull) {
                if(aData[10]=="0"){
                    $(nRow).remove();
                }
                return nRow;
            }
          });

更新

当我这样做时:

'fnRowCallback': function(nRow, aData, iDisplayIndex, iDisplayIndexFull) {
                      var r=confirm(aData[10]);
                  if (parseInt(aData[10], 10) === 0) {
                        $(nRow).remove();
                    }
                    return nRow;
                }

...然后我可以看到其中一行有0。 但是当我这样做时:

'fnRowCallback': function(nRow, aData, iDisplayIndex, iDisplayIndexFull) {
                  if (parseInt(aData[10], 10) === 0) {
var r=confirm(aData[10]);
                        $(nRow).remove();
                    }
                    return nRow;
            }

...然后警告JS消息(即var r=confirm(aData[10]))没有出现,这意味着IF语句返回false。但为什么???

![在此处输入图片说明] [1]

1 个答案:

答案 0 :(得分:0)

这可能是打字问题。尝试将列值转换为这样的整数:

if (parseInt(aData[10], 10) === 0) {
    $(nRow).remove();
}