javascript – 为什么jQuery dataTables不能解析我的JSON?

前端之家收集整理的这篇文章主要介绍了javascript – 为什么jQuery dataTables不能解析我的JSON?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我试图填写dataTable如下:

$("#my-datatable").dataTable( {
    "sAjaxSource" : "/someURLOnMyServer","bDestroy" : true,"fnServerParams" : function(serverParams) {
        serverParams.push(
            {
                "name" : "widget","value" : token
            }
        );
    }
});

它填充的HTML表格:

根据Firebug,从服务器返回的JSON是:

[
   {
      "id":1,"attributeType":{
         "id":1,"name":"test1","tag":"test-type","is-dog":false
      },"attributeValue":{
         "id":null,"name":"blah","tag":"BLAH"
      },"buzz":1,"fizz":"53abc"
   }
]

但Firebug在其控制台中抛出以下JavaScript错误

TypeError: aData is undefined
[Break On This Error]   

for ( i=0 ; i

谁能发现出了什么问题?要么我没有正确设置我的dataTable对象,要么返回的JSON与它试图填充的HTML表的“模式”不匹配.无论哪种方式,我都输了.提前致谢!

最佳答案
数据表需要特定的结果格式.如果您不使用该格式,则必须声明所有内容.

$('#my-datatable').dataTable( {

    "sAjaxSource": "/url/here","fnServerData": function ( sSource,aoData,fnCallback ) {
            aoData.push( { "name": "widget","value": "token" } );

            request = $.ajax({
              "dataType": 'json',"type": "GET","url": sSource,"data": aoData,"success": fnCallback
            });
      },"aoColumns": [
            { "mDataProp": "id"},{ "mDataProp": "fizz"},{ "mDataProp": "name"},{ "mDataProp": "tag"},{ "mDataProp": "attributeValue.name"},{ "mDataProp": "attributeValue.tag"},],});

格式为:http://datatables.net/release-datatables/examples/server_side/post.html

原文链接:https://www.f2er.com/jquery/428637.html

猜你在找的jQuery相关文章