我试图将JSON数据转换为html,但我可以访问的JSON代码没有显示要用作数据键的数组。
有谁知道如何获取这些数据?我的数据值即将出现"未定义"在HTML中。
示例数据:
[ { "stuff" : {
"categories" : null,
"value-1" : "a string of cool text to display",
"value-2" : 3,
"value-3" : null,
"value-4" : [ ],
"value-5" : 58505,
"value-6" : true,
"value-7" : false,
} },
{ "stuff" : {
"categories" : null,
"value-one" : "another string of cool text to display",
"value-two" : 3,
"value-three" : null,
"value-four" : [ ],
"value-five" : 58505,
"value-six" : true,
"value-seven" : false,
} }
]
示例代码:
$(function() {
$.getJSON( "sample.json", function(data) {
$.each(data, function() {
$('<div></div>')
.hide()
.append('<p>' + this.value-one + '</p>')
.appendTo('#awesome')
.fadeIn();
});
});
});
答案 0 :(得分:1)
尝试:
$.each(data, function(key, value) {
$('<div></div>')
.hide()
.append('<p>' + value.stuff['value-one'] + '</p>')
.appendTo('#awesome')
.fadeIn();
});
更新:当对象密钥中包含-
时,您无法使用object.value-one
访问它,您必须object['value-one']
。
答案 1 :(得分:1)
您没有正确使用jquery each。
$.each(data, function(index, value) {
$('<div></div>')
.hide()
.append('<p>' + value.stuff['value-one'] + '</p>')
.appendTo('#awesome')
.fadeIn();
});