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

DataTables 警告:table id=dataTables - Ajax 错误。 404 未找到

数据表警告:Json 响应不起作用

DataTables 警告:table id=example - 无法重新初始化 DataTable - jQuery