【发布时间】:2012-12-21 23:26:29
【问题描述】:
首先,我是一个 Total jquery/js newbee!
然后我有一个像这样的长json:
[
{
"rulesrev": 74,
"macaddr": "",
"lat": "3543.03133N",
"ip": "10.128.113.180",
"clientname": "D-06-29",
"relay0mask": "-1",
"relay1stat": "-1",
"clientid": 542,
"bldname": "D_valiasr_zartosht",
"uptime": "",
"current": "",
"temperature": "",
"softver": "",
"relay0stat": "0",
"volume": "100",
"hardver": " ",
"relay1mask": "-1",
"pic": "",
"comment": " p",
"lon": "05124.48299E",
"rtt": "2012/08/15 23:20:55.0 (load=0.05) (mem=0.11)",
"bldaddr": ""
},
{
"rulesrev": 74,
"macaddr": "00:10:f3:22:30:08,00:10:f3:22:30:09",
"lat": "3537.41356N",
"ip": "10.19.64.63",
"clientname": "M-19-013",
"relay0mask": "-1",
"relay1stat": "-1",
"clientid": 494,
"bldname": "tarebar_m19",
"uptime": "19d 20:05:12",
"current": "",
"temperature": "",
"softver": "",
"relay0stat": "0",
"volume": "100",
"hardver": " n",
"relay1mask": "-1",
"pic": "",
"comment": " ",
"lon": "05122.94431E",
"rtt": "2012/08/25 09:19:25.0 (load=0.05) (mem=0.17)",
"bldaddr": ""
}
]
我想将它转换为一个 Jquery DataTable 可读数组,应该是这样的:
"aaData": [
/* Reduced data set */
[ "Trident", "Internet Explorer 4.0", "Win 95+", 4, "X" ],
[ "Trident", "Internet Explorer 5.0", "Win 95+", 5, "C" ],
[ "Trident", "Internet Explorer 5.5", "Win 95+", 5.5, "A" ],
[ "Trident", "Internet Explorer 6.0", "Win 98+", 6, "A" ],
[ "Trident", "Internet Explorer 7.0", "Win XP SP2+", 7, "A" ],
[ "Gecko", "Firefox 1.5", "Win 98+ / OSX.2+", 1.8, "A" ],
[ "Gecko", "Firefox 2", "Win 98+ / OSX.2+", 1.8, "A" ],
[ "Gecko", "Firefox 3", "Win 2k+ / OSX.3+", 1.9, "A" ],
[ "Webkit", "Safari 1.2", "OSX.3", 125.5, "A" ],
[ "Webkit", "Safari 1.3", "OSX.3", 312.8, "A" ],
[ "Webkit", "Safari 2.0", "OSX.4+", 419.3, "A" ],
[ "Webkit", "Safari 3.0", "OSX.4+", 522.1, "A" ]
],
"aoColumns": [
{ "sTitle": "Engine" },
{ "sTitle": "Browser" },
{ "sTitle": "Platform" }
]
我该怎么办?
我在这里或其他地方找不到任何帖子来描述这样的事情
谁能帮忙?
编辑
第二个数组只是我在datatables 中看到的结构
例子。我想将我的 json 更改为像第二个数组这样的结构
编辑:
在我的 json 中,每个数据的第一部分将使表列标题进入第二个数组结构的底部,第二部分即值进入第二个数组结构的顶部。最后应该是这样的:
"aaData": [
[ 74, "", "3543.03133N", "10.128.113.180", "D-06-29", "-1", "-1", 542, "D_valiasr_zartosht", "", "", "", "", "0", "100", "", "-1", "", " p", "05124.48299E", "2012/08/15 23:20:55.0 (load=0.05) (mem=0.11)", ""],
[ 74, "", "3543.03133N", "10.128.113.180", "D-06-29", "-1", "-1", 542, "D_valiasr_zartosht", "", "", "", "", "0", "100", "", "-1", "", " p", "05124.48299E", "2012/08/15 23:20:55.0 (load=0.05) (mem=0.11)", ""],
[ 74, "", "3543.03133N", "10.128.113.180", "D-06-29", "-1", "-1", 542, "D_valiasr_zartosht", "", "", "", "", "0", "100", "", "-1", "", " p", "05124.48299E", "2012/08/15 23:20:55.0 (load=0.05) (mem=0.11)", ""],
[ 74, "", "3543.03133N", "10.128.113.180", "D-06-29", "-1", "-1", 542, "D_valiasr_zartosht", "", "", "", "", "0", "100", "", "-1", "", " p", "05124.48299E", "2012/08/15 23:20:55.0 (load=0.05) (mem=0.11)", ""],
[ 74, "", "3543.03133N", "10.128.113.180", "D-06-29", "-1", "-1", 542, "D_valiasr_zartosht", "", "", "", "", "0", "100", "", "-1", "", " p", "05124.48299E", "2012/08/15 23:20:55.0 (load=0.05) (mem=0.11)", ""],
[ 74, "", "3543.03133N", "10.128.113.180", "D-06-29", "-1", "-1", 542, "D_valiasr_zartosht", "", "", "", "", "0", "100", "", "-1", "", " p", "05124.48299E", "2012/08/15 23:20:55.0 (load=0.05) (mem=0.11)", ""],
[ 74, "", "3543.03133N", "10.128.113.180", "D-06-29", "-1", "-1", 542, "D_valiasr_zartosht", "", "", "", "", "0", "100", "", "-1", "", " p", "05124.48299E", "2012/08/15 23:20:55.0 (load=0.05) (mem=0.11)", ""],
[ 74, "", "3543.03133N", "10.128.113.180", "D-06-29", "-1", "-1", 542, "D_valiasr_zartosht", "", "", "", "", "0", "100", "", "-1", "", " p", "05124.48299E", "2012/08/15 23:20:55.0 (load=0.05) (mem=0.11)", ""],
[ 74, "", "3543.03133N", "10.128.113.180", "D-06-29", "-1", "-1", 542, "D_valiasr_zartosht", "", "", "", "", "0", "100", "", "-1", "", " p", "05124.48299E", "2012/08/15 23:20:55.0 (load=0.05) (mem=0.11)", ""],
[ 74, "", "3543.03133N", "10.128.113.180", "D-06-29", "-1", "-1", 542, "D_valiasr_zartosht", "", "", "", "", "0", "100", "", "-1", "", " p", "05124.48299E", "2012/08/15 23:20:55.0 (load=0.05) (mem=0.11)", ""]
], "aoColumns": [
{ "sTitle": "macaddr" },
{ "sTitle": "lat" },
{ "sTitle": "ip" },
{ "sTitle": "clientname" },
{ "sTitle": "relay0mask" },
{ "sTitle": "relay0stat" },
{ "sTitle": "relay1stat" },
{ "sTitle": "clientid" },
{ "sTitle": "bldname" },
{ "sTitle": "uptime" },
{ "sTitle": "current" },
{ "sTitle": "temperature" },
{ "sTitle": "softver" },
{ "sTitle": "volume" },
{ "sTitle": "hardver" },
{ "sTitle": "relay1mask" },
{ "sTitle": "pic" },
{ "sTitle": "comment" },
{ "sTitle": "lon" },
{ "sTitle": "rtt" },
{ "sTitle": "bldaddr" },
]
]
【问题讨论】:
-
请改进您的示例,在您的初始 JSON 中,没有提及“Trident”或“Internet Explorer 4.0”。我们应该如何知道这些值的来源?
-
嗨@JuanMendes 我编辑了我的帖子
-
您仍然没有解释您的初始 JSON 如何映射到数据表的 JSON。例如
[{a:"Trident", b:"IE"}, {a:"WebKit",b:"Safari"}]将映射到[["Trident","IE"],["WebKit","Safari"]]
标签: javascript jquery multidimensional-array datatable javascript-objects