gpt4 book ai didi

datatables - 在数据表中使用对象而不是数组

转载 作者:行者123 更新时间:2023-12-03 13:16:58 26 4
gpt4 key购买 nike

使用数据表时,如果使用对象而不是数组,我会得到“表中没有可用数据”:

var data1 =
{
"status": "success",
"districts": {
"1": {
"district_number": "1",
"district_name": "district one"
},
"2": {
"district_number": "2",
"district_name": "district two"
}
},
"time": "1.109s"
};

var table1 = jQuery("#data_table1").DataTable({
"data": data1.districts,
"aoColumns": [
{ "mData": "district_number" },
{ "mData": "district_name" }
]
});

我可以使用 mData 获取一个数组以显示在数据表中,如下所示:

var data2 =
{
"status": "success",
"districts": [
{
"district_number": "1",
"district_name": "district one"
},
{
"district_number": "2",
"district_name": "district two"
}
],
"time": "1.109s"
};

var table2 = jQuery("#data_table2").DataTable({
"data": data2.districts,
"aoColumns": [
{ "mData": "district_number" },
{ "mData": "district_name" }
]
});

https://jsfiddle.net/w93gubLv/

有没有办法让数据表以原始格式使用对象,还是必须将对象转换为数组?

最佳答案

您可以编写自己的函数将一种格式转换为另一种格式,例如:

function formatData(data){
var result = [];
for(prop in data){
if(data.hasOwnProperty(prop)){
result.push( data[prop] );
}
}
return result;
}

您稍后可以使用它向 jQuery DataTables 传递数据,如下所示。

var table1 = jQuery("#data_table1").DataTable({
"data": formatData(data1.districts),
"aoColumns": [
{ "mData": "district_number" },
{ "mData": "district_name" }
]
});

参见 updated jsFiddle用于代码和演示。

关于datatables - 在数据表中使用对象而不是数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34752869/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com