DataTables 警告:表 id=id - 请求行 row-index、列 column-index 的未知参数“parameter”
Posted
技术标签:
【中文标题】DataTables 警告:表 id=id - 请求行 row-index、列 column-index 的未知参数“parameter”【英文标题】:DataTables warning: table id=id - Requested unknown parameter 'parameter' for row row-index, columncolumn-index`DataTables 警告:表 id=id - 请求行 row-index、列 column-index 的未知参数“parameter” 【发布时间】:2021-03-01 02:18:17 【问题描述】:我正在使用 dataTables 为我的 json 数据制作表格。我从服务器接收数据,就像:
var BillingDate = [
"branchcode":"668",
"saleyear":"99",
"saleprd":"3",
"LastX":"36.649717",
"LastY":"52.488193",
"flag":"1",
"flag_Title":null
,
"branchcode":"669",
"saleyear":"99",
"saleprd":"3",
"LastX":"36.712585",
"LastY":"52.935543",
"flag":"1",
"flag_Title":null
,
"branchcode":"668",
"saleyear":"99",
"saleprd":"3",
"LastX":"36.649717",
"LastY":"52.488193",
"flag":"1",
"flag_Title":null
,
"branchcode":"669",
"saleyear":"99",
"saleprd":"3",
"LastX":"36.712585",
"LastY":"52.935543",
"flag":"1",
"flag_Title":null
,
"branchcode":"668",
"saleyear":"99",
"saleprd":"3",
"LastX":"36.649717",
"LastY":"52.488193",
"flag":"1",
"flag_Title":null
,
"branchcode":"669",
"saleyear":"99",
"saleprd":"3",
"LastX":"36.712585",
"LastY":"52.935543",
"flag":"1",
"flag_Title":null
,
"branchcode":"668",
"saleyear":"99",
"saleprd":"3",
"LastX":"36.649717",
"LastY":"52.488193",
"flag":"1",
"flag_Title":null
,
"branchcode":"669",
"saleyear":"99",
"saleprd":"3",
"LastX":"36.712585",
"LastY":"52.935543",
"flag":"1",
"flag_Title":null
];
我的表格代码是这样的:
function CreateTablePagination(ID,data)
$(ID).DataTable(
data: data,
columns: [
"title": "branchcode" ,
"title": "year" ,
"title": "period" ,
"title": "LastX" ,
"title": "LastY" ,
"title": "flag"
]
);
我已经尝试过调试器和 console.log。两者都清楚地显示了我的数据,但由于 thr 错误,表中没有数据。
我的代码所在的 div 容器如下:
<div class="ChartDiv">
<table id="OMID_DetailTable" class="display" ></table>
<div id="chartdiv">
</div>
</div>
但我不断收到错误:
DataTables warning: table id=id - Requested unknown parameter 'parameter' for row row-index, columncolumn-index`
有人知道为什么吗?以及解决方案?
【问题讨论】:
【参考方案1】:假设您定义了没有任何显式行的 html 表,类似这样...
<table id="example" class="display dataTable cell-border" style="width:100%">
</table>
...那么您的 DataTable 选项需要配置如下:
var BillingDate = [ ..., ..., ..., ... ];
$(document).ready(function()
var table = $('#example').DataTable(
data: BillingDate,
columns: [
"title": "branchcode",
"data": "branchcode" ,
"title": "year",
"data": "saleyear" ,
"title": "period",
"data": "saleprd" ,
"title": "LastX",
"data": "LastX" ,
"title": "LastY",
"data": "LastY" ,
"title": "flag",
"data": "flag"
]
);
);
注意事项:
-
因为您的 JSON 数据数组位于名为
BillingDate
的变量中,所以这是您需要在数据表中使用的名称:
data: BillingDate
这告诉 DataTables 在遍历行数据数组时从哪里开始。
-
然后,您可以通过使用
title
提供列标题和使用data
提供数据源来逐一声明列。每个 data
值必须与 JSON 对象中使用的名称完全匹配(每行一个对象)。
【讨论】:
哇,效果很好! :) 谢谢你一千次pan> 【参考方案2】:只需将数据集放入数组而不是对象中:
var dataSet = [
["668","99","3","36.649717","52.488193","1"],
["668","99","3","36.649717","52.488193","1"],
["668","99","3","36.649717","52.488193","1"],
["668","99","3","36.649717","52.488193","1"]
];
Codepen example
【讨论】:
没有区别...我也添加了另一个列 确保列名与数据对象的键匹配。在上面的代码中,它们没有 但我想以特定方式命名它们...您的意思是我必须更改标题本身吗?还是我给的标题? 我都改了试了……还是没区别 那么这里是您的服务器数据的一个工作示例,基于 andrewjames 回答 codepen.io/oda79/pen/MWeRJaM以上是关于DataTables 警告:表 id=id - 请求行 row-index、列 column-index 的未知参数“parameter”的主要内容,如果未能解决你的问题,请参考以下文章
DataTables 警告(表 id = 'table-filter'):从数据源请求未知参数 '0' 用于数据表中的第 0 行错误
DataTables 警告:table id=DataTables_Table_1 - 无法重新初始化 DataTable。不工作
ajax datatable - DataTables警告:table id = example - 无法重新初始化DataTable