8

我正在使用数据表并向 JS 代码添加选项,这些更改有效,但我不断收到弹出警告。如何停止警告?

$(document).ready(function() {
    $('#ideas').dataTable( {
        "aLengthMenu": [[5, 10, 15, -1], [5, 10, 50, "All"]]
    });
});

在此处输入图像描述

4

4 回答 4

10

如果您只是想摆脱警报框(例如“停止警告”),请将其添加为您的第一行$(document).ready

$.fn.dataTableExt.sErrMode = 'throw';

现在数据表将在控制台中抛出一个错误,显示为“未捕获的错误:数据表警告... ”,而不是丑陋的警报框。

但是,无论现在以静默方式抛出错误,您的代码/数据中都会出现错误。

当数据中的列数与数据中的列数不匹配时,会引发错误“ DataTables warning (table id = 'XXX'): Requested unknown parameter 'XXX' from the data source for row X<table> ” .

<thead>
  <th>col A</th>
  <th>col B</th>
</thead>

插入

<tr>
  <td>test test</td>
</tr>

或者

<tr>
  <td colspan="2">test test</td>
</tr>

会重现该错误。所以再次检查你的数据..

于 2013-06-17T14:40:21.143 回答
1

您应该使用 "bDestroy": true道具以便在回发期间填充表格

于 2013-07-24T06:40:40.777 回答
0

您是否动态填充数据?然后,在填充数据后移动脚本。

就像是,

$(document).ready(function() {
    $('#example').dataTable( {
        "bProcessing": true,
        "sAjaxSource": "sources/arrays.txt",
        "aLengthMenu": [[5, 10, 15, -1], [5, 10, 50, "All"]]
    });
});
于 2013-06-17T04:57:16.207 回答
0

你应该使用"bDestroy": true

替换与给定选择器匹配的 DataTable,并将其替换为传递了新初始化对象的属性的数据表。如果没有表与选择器匹配,则将按正常构造新的 DataTable。

$(document).ready(function() {
    $('#ideas').dataTable({
        "aLengthMenu": [[5, 10, 15, -1], [5, 10, 50, "All"]],
        "bDestroy": true 
    });
});

在创建破坏先前数据表对象的新数据表之前也可以尝试此操作。

$(document).ready(function() {
    $("#ideas").dataTable().fnDestroy();
    $('#ideas').dataTable({
        "aLengthMenu": [[5, 10, 15, -1], [5, 10, 50, "All"]]
    });
});
于 2017-03-28T10:52:24.710 回答