jquery 数据表 1.10 - 首先检查 json

jquery datatables 1.10 -check json at first

我用jquerydatatables

当我的 json 是:

{"apps":
    {"app":
        [{"id":"1","user":"test"}]
    }
}

DataTable 运行良好

$('#getInfo')
    .DataTable(
            {
                "ajax" : {
                    "url" : "getinfo",
                    "dataSrc" : "apps.app"
                },
                "columns" : [
                        {
                            "data" : "id"
                        },
                        {
                            "data" : "user"
                        },
                ],

            });

但是可能会有一个问题,如果后端什么都没有,json 可能为 null。

{"apps":null} 

如果在这种情况下,datatable就会有问题````

控制台消息显示:

Uncaught TypeError: Cannot read property 'length' of undefined    

我想检查数据表是否什么都没有,向用户提醒消息
请指导我谢谢!

dataSrc 也可以是一个函数,您可以在注入项目之前使用它来操作 JSON,或者在这种情况下,如果没有返回任何内容,则执行某些操作(如返回有效的空对象)。

ajax: {
  url: "getinfo",
  dataSrc: function(json) {
    if (typeof json.apps == 'object') {
       return json.apps.app
    } else {
       return [{"id":"","user":""}]
    }
  }
}
...