来自控制器的我的JSON输出如下所示:
{"subscribers":"[{\"code\":\"Code1\",\"name\":\"Name1\",\"id\":539,\"companyId\":\"CD1\",\"acctNum\":\"Dell\"},{\"code\":\"Code2\",\"name\":\"Name2\",\"id\":540,\"companyId\":\"CD2\",\"acctNum\":\"Dell1\"}]"}
这是输出变量" 数据"来自控制器' three.htm' :
$("#getName").click(function() {
$.getJSON("three.htm", function(data) {
})
.fail(function( jqxhr, textStatus, error ) {
var err = textStatus + ', ' + error;
alert(err);
console.log( "Request Failed: " + err);
})
.success(function(data){
console.log("loadDataTable >> "+JSON.stringify(data));
loadDataTable(data);
})
});
function loadDataTable(data){
$("#recentSubscribers").dataTable().fnDestroy();
var oTable = $('#recentSubscribers').dataTable({
"aaData" : data,
"processing": true,
"aoColumns" : [
{"mData" : "code" },
{ "mData" : "name" },
{ "mData" : "id" },
{"mData" : "companyId" },
{"mData" : "acctNum" }
]
});
}
但是,数据表没有显示任何结果。
尝试了很多方法之后,几乎停留在这里。请帮助。
答案 0 :(得分:1)
你的JSON基本上只是一个包含一个项目subscribers
的对象,持有一个长字符串。您需要先将该字符串解析为JSON,然后才能将其插入到dataTables中:
...
"aaData" : JSON.parse(data.subscribers),
...
您的代码在这里工作 - >的 http://jsfiddle.net/x5n94dqv/ 强>