【问题标题】:DataTables warning: JSON data from server could not be parsed. This is caused by a JSON formatting errorDataTables 警告:无法解析来自服务器的 JSON 数据。这是由 JSON 格式错误引起的
【发布时间】:2012-01-09 23:20:12
【问题描述】:

我在一个项目中使用服务器端数据表

然后进行搜索,显示以下错误消息:

DataTables warning: JSON data from server not could be parsed. This is Caused by a JSON formatting error.

我在论坛中找到了一些建议,但对我没有任何帮助

有人有什么建议吗?

【问题讨论】:

    标签: php jquery json jquery-datatables


    【解决方案1】:

    您的 json 不是数据表所期望的有效格式,即行/列二维数组。

    [["row1col1","row1col2"],["row2col1"],.....]
    

    【讨论】:

    【解决方案2】:

    如果您正在使用:

    "sAjaxSource": "myHandler.php"
    

    然后你必须从你的处理程序返回:

    "{\"aaData\": [{\"propOne\": \"valueOne\"},{\"propTwo\": \"valueTwo\"}], [...],... }"
    

    注意

    \"aaData\":
    

    在 json 收集和注意刹车之前:

    {\"aaData\"....}
    

    我在 asp.net 中的示例(这是有效的):

    Response.Write("{\"aaData\": [{\"propOne\": \"valueOne\"},{\"propTwo\": \"valueTwo\"}]}");
    

    客户页面:

          oTable = $('#myTable').dataTable( {
            "bProcessing": true,
            "sPaginationType": "full_numbers",
            "aLengthMenu": [[5,10,20,50,100], [5,10,20,50,100]],
            "aaSorting": [[ 1, "desc" ]],
            "sAjaxSource": "MyHandler.ashx",
            "aoColumns": [
                { "mDataProp": "propOne" },
                { "mDataProp": "propTwo" }
            ]
        });
    

    【讨论】:

    • 我的处理程序返回:"{"aaData": [{"propOne": "valueOne"},{"propTwo": "valueTwo"}], [...],... } ",没有 \ 那是问题吗?或者我可以把 \ ?
    • 是的,datatable 只接受双逗号,这个:{'propOne': 'valueOne'} 会报错。 DataTable 需要 "(double) 所以你需要用 \.
    【解决方案3】:

    我遇到了这个问题,就像更新以下文件中的信息一样简单:

        "sAjaxSource": "DataTables/examples/server_side/scripts/server_processing.php"
    

    不知道你要找的答案是不是那个行人,但我想我会投入 2 美分!!

    【讨论】:

      【解决方案4】:

      检查 firebug 中的网络选项卡,您可能会看到底层服务器错误

      【讨论】:

        【解决方案5】:

        对于较新版本的数据表,不要忘记从 server_processing.php 文件中删除这一行

        /* REMOVE THIS LINE (it just includes my SQL connection user/pass) */
            include( $_SERVER['DOCUMENT_ROOT']."/datatables/mysql.php" );
        

        【讨论】:

          猜你喜欢
          • 2013-03-07
          • 2016-04-02
          • 1970-01-01
          • 2012-03-18
          • 1970-01-01
          • 2019-12-26
          • 1970-01-01
          • 2017-11-18
          • 2017-01-01
          相关资源
          最近更新 更多