0

我正在使用 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]

4

1 回答 1

0

这可能是打字问题。尝试将列值转换为整数,如下所示:

if (parseInt(aData[10], 10) === 0) {
    $(nRow).remove();
}
于 2012-05-26T22:36:08.123 回答