如何在Datatables javascript中插入嵌套json
作为对ajax中控制器的响应,我得到了一个字符串数组,我正在将其转换为javascript数组 问题是该数组包含嵌套的json数组 我需要在jquery数据表上绘制它。 对于普通Json,它可以工作,但是如果Json是嵌套的,它就不能工作 如何实现这一点 我想做的是 生成数据和标题的数组,并将该数组推送到数据表的列中 但这只适用于普通json 但不适用于嵌套json数组 这是我的嵌套Json示例:-如何在Datatables javascript中插入嵌套json,javascript,html,json,datatables,Javascript,Html,Json,Datatables,作为对ajax中控制器的响应,我得到了一个字符串数组,我正在将其转换为javascript数组 问题是该数组包含嵌套的json数组 我需要在jquery数据表上绘制它。 对于普通Json,它可以工作,但是如果Json是嵌套的,它就不能工作 如何实现这一点 我想做的是 生成数据和标题的数组,并将该数组推送到数据表的列中 但这只适用于普通json 但不适用于嵌套json数组 这是我的嵌套Json示例:- //SAMPLE JSON { "id": "1951-4", "example": { "1"
//SAMPLE JSON { "id": "1951-4", "example": { "1": [ 6721 ], "2": [ 6722 ] } }
需要表示上述示例json对象的DataTable
$.ajax({
url: "/api/searchData/",
type: "POST",
dataType: "text",
beforeSend: function () {
$("#resultLoader").show();
},
success: function (result) {
var resultArray = JSON.parse(result);
var my_columns = [];
var my_item = {};
var nestedcolumns = [];
$.each(resultArray[0], function (key, value) {
var my_item = {};
if (typeof value === "object") {
$.each(value, function (key, value) {
var nestedItem = {};
nestedItem.data = key;
nestedItem.title = key;
nestedcolumns.push(nestedItem);
my_item.data = nestedcolumns;
});
} else {
my_item.data = key;
}
my_item.title = key;
my_columns.push(my_item);
});
$("#example").show();
var table = $('#example').DataTable({
data: resultArray,
"columns": my_columns
});
},
complete: function () {
$("#resultLoader").hide();
},
error: function (error) {
console.log("Error", error);
}
});
错误:
DataTables警告:表id=示例-请求的未知参数
第0行第1列的“[object object],[object]”。更多
有关此错误的信息,请参阅
顺便说一句,您从AJAX响应填充DataTable的方法是完全错误的——它引发了与异步AJAX性质相关的各种问题,并使您无法从所有出色的DataTables API方法中获益。相反,您应该使用DataTables选项。代码中并不清楚您到底想要实现什么:这两行的内容应该是什么样子。顺便说一下,您从AJAX响应填充DataTable的方法完全是错误的——它引发了与异步AJAX性质相关的各种问题,并使您无法从所有出色的DataTables API方法中获益。相反,您应该使用DataTables选项—代码中并没有那么清楚您想要实现什么:这两行的内容应该是什么样子。