【问题标题】:DataTables error: Requested unknown parameter '1' from the data source for row 0DataTables 错误:从第 0 行的数据源请求未知参数“1”
【发布时间】:2014-09-13 12:53:58
【问题描述】:

我正在尝试使用 jQuery / DataTables 创建一个表,并使用 JSON 数据作为源。我已经验证了数据很好。不幸的是,我不断收到此错误:“DataTables 警告(表 id='example'):从第 0 行的数据源请求未知参数 '1'”。我不确定我在这里做错了什么:

JSON

dataSet = [
{
    "Month": "October",
    "Notices Received": "0",
    "Declined Participation": "0",
    "Selected Field Reviews": "0",
    "Selected File Review": "0",
    "Pending": "0",
    "Pending Previous Year": "0",
    "Controversial": "0",
    "GFP Reviews": "0",
    "NAD Appeals": "0",
    "Mediation Cases": "0",
    "Monthly Cost Savings": "$0.00",
    "Monthly Expenditure": "$0.00"
},
{
    "Month": "November",
    "Notices Received": "0",
    "Declined Participation": "0",
    "Selected Field Reviews": "0",
    "Selected File Review": "0",
    "Pending": "0",
    "Pending Previous Year": "0",
    "Controversial": "0",
    "GFP Reviews": "0",
    "NAD Appeals": "0",
    "Mediation Cases": "0",
    "Monthly Cost Savings": "$0.00",
    "Monthly Expenditure": "$0.00"
},
{
    "Month": "December",
    "Notices Received": "0",
    "Declined Participation": "0",
    "Selected Field Reviews": "0",
    "Selected File Review": "0",
    "Pending": "0",
    "Pending Previous Year": "0",
    "Controversial": "0",
    "GFP Reviews": "0",
    "NAD Appeals": "0",
    "Mediation Cases": "0",
    "Monthly Cost Savings": "$0.00",
    "Monthly Expenditure": "$0.00"
}];

JS:

$('#theJson').text(dataSet); //just for testing

$('#example').dataTable( {
  "aaData": dataSet,
  "aoColumns": [

        { "sTitle": "Month" },
        { "sTitle": "Notices Received" },
        { "sTitle": "Declined Participation" },
        { "sTitle": "Selected Field Reviews"},
        { "sTitle": "Selected File Reviews"},
        { "sTitle": "Pending"},
        { "sTitle": "Pending Previous Year"},
        { "sTitle": "Controversial"},
        { "sTitle": "GFP Reviews"},
        { "sTitle": "NAD Appeals"},
        { "sTitle": "Mediation Cases"},
        { "sTitle": "Monthly Cost Savings"},
        { "sTitle": "Monthly Expenditure"}
    ]

} );

HTML:

<table width="100%" id="example" border="0" cellspacing="0" cellpadding="0"></table>

我得到的只是错误消息和表头。页脚实际上显示:“显示 4,008 个条目中的 1 到 10 个”,这可能表明它正在查看数据。谢谢!

【问题讨论】:

    标签: jquery json jquery-datatables


    【解决方案1】:

    问题是"aaData": dataSet,接受数组数据,但你还没有转换json数据,

    检查一下,

    var dataSet = [  {//Table Data }, { //Table Data } , { //Table Data } ];//Wrong Type (Still Json Format)
    

    但数据格式除外

    var dataSet = [  [//Table Data ], [ //Table Data ] , [ //Table Data ] ];//Right Type (Now  Array Format)
    

    转换json data to array data

    var dataSet=[];
        $.each(o,function(i,k){
              dataSet.push( $.map(o[i], function(el) { return el; }));
        });
    console.log(dataSet);
    

    这里是他的演示...Click Here Demo

    现在试试吧,

    【讨论】:

    • 完美!现在正在工作。我假设“参数'1'”与数据格式有关。谢谢!
    猜你喜欢
    • 2014-05-21
    • 2014-04-15
    • 1970-01-01
    • 2012-08-30
    • 2013-05-08
    • 2021-10-24
    • 2013-11-15
    • 2016-09-24
    相关资源
    最近更新 更多