很抱歉问这个问题,即使查看其他问题我也无法工作......
我在“json.php”中有一个JSON输出,例如:
[
{"serverid":"1","servername":"Server One"},
{"serverid":"2","servername":"Server Two"}
]
我有一个脚本,可以获取数据&将其解析为变量
var servers;
jQuery.get('json.php', function(data) {
servers = JSON.parse(data);
jQuery('#servers').servers.servername
});
我有一个div将结果输出到:
<div id="servers"></div>
无论我尝试什么,我总会得到某种
“未捕获的TypeError:无法读取未定义的属性'servername'”错误。
我也想看看结果,但是我甚至无法打印出来。
再次抱歉这样的另一个问题
答案 0 :(得分:12)
你的意思不是这样吗? jQuery对象(它是对div的引用)对servername
一无所知。此外,您需要迭代遍历项目数组,以便全部获取:
servers = $.parseJSON(data);
$.each(servers, function(index, value) {
$("#servers").text($("#servers").text() + " " + value.servername);
});
答案 1 :(得分:5)
您只需要错误消息。
jQuery('#servers')
包装jQuery对象中的#servers div。而且这个对象没有servers
等属性。
相反,您可以使用:
var servers = JSON.parse(data);
var res = '';
for(var i = 0; i<servers.length; i++){
res = res + '<p>' + servers[i].servername +'</p>';
}
$('#servers').append(res);