所以我正在运行一个$ .getJSON语句,我遇到了一些问题...这里是json:
{
"K-6608-1-0": [
{
"Info": [
{
"SVGFile": "46658.svg",
"Name": "Faucet Parts"
}
],
"Parts": [
{
"Cod":"70012",
"Name":"Ruela de Parafuso Reforçado B2",
"Price":"$100"
},
{
"Cod":"71131",
"Name":"Parafusasdasdasdsdao Reforçado B2",
"Price":"$45"
},
{
"Cod":"78208",
"Name":"Tubo de Conexão R2D2",
"Price":"$150"
}
]
}
]
}
所以,假设我以这种方式制作了getJSON:
$.getJSON('test.json', function(data){
alert(data["K-6608-1-0"]["Info"]["SVGFile"]);
})
为什么此代码不返回“46658.svg”?哪里出错?
提前致谢^^
答案 0 :(得分:3)
K-6608-1-0
和Info
是数组,因此您必须设置位置。
alert(data["K-6608-1-0"][0]["Info"][0]["SVGFile"]);
^ ^
答案 1 :(得分:2)
那是因为data["K-6608-1-0"]
是一个数组,所以要访问你想要的属性,首先你必须访问这个数组的元素bi它的索引(data["K-6608-1-0"][0]["Info"]
也是一个数组):
$.getJSON('test.json', function(data){
alert(data["K-6608-1-0"][0]["Info"][0]["SVGFile"]);
// ^ ^
});
答案 2 :(得分:0)
alert(data["K-6608-1-0"][0]["Info"]["SVGFile"]);
^^^--- add this
你有嵌套在嵌套在......中的数组中的对象的数组。第一个K-实际上是一个数组。你可能也需要在更深层次上做同样的事情。