使用datatables时,在搜索框输入值进行搜索后报出以下warning:
DataTables warning: table id=table4 - Requested unknown parameter '4' for row 0. For more information about this error, please see http://datatables.net/tn/4
忽略的话table也能正常加载,但还是要解决此问题。
从stackoverflow查到:
DataTables中的每个单元格都会请求数据,当DataTables尝试获取单元格的数据并且无法执行此操作时,会触发警告,告知您数据不可用。警告消息是:
DataTables警告:表id = {id}- 请求{parameter}的行的未知参数{row-index}
对应:
{id} 被替换为触发错误的表的DOM ID
{parameter} 是DataTables正在请求的数据参数的名称
{row-index} 是触发错误的rwo的DataTables内部行索引。
所以为了分解它,DataTables已经请求了给定行的数据,{parameter}并且没有数据,或者是null或 undefined。
所以是访问该列但该列没有值,我还是没有明白导致这个结果的原因,找到了一个粗暴的解决办法:
oTable = $("#bigtable").dataTable({
"columnDefs": [{
"defaultContent": "-",
"targets": "_all"
}]
});
把任何空值都替换为指定的内容,警报框不再提示。
先解决报警问题,以后再细探究竟。。