我在下面的图片中显示了一些JSON。项目下有一个名为0
的对象。
我想获取项目中的属性。如何使用jQuery或Javascript访问它?
这是我到目前为止所做的:
jQuery.getJSON('http://localhost/magento/js/primitives/js/SpaceTreeRegion.json',
function(jsonData) {
jQuery.each(jsonData, function(currentRegionNode, jsonData) {
alert(jsonData.items.product_name);
});
});
此代码出错:jsonData.items.value is undefined
JSON是这样的:
[
{
"category_id": "Clothes",
"Items": [
{
"product_id": 1,
"price": 50,
"product_name": "Shirts"
},
{
"product_id": 2,
"price": 60,
"product_name": "T-Shirt"
}
]
}
]
我希望对象中的每个product_id
访问price
,product_name
和items
。
答案 0 :(得分:4)
试试这段代码
jQuery.getJSON('your json url', function(yourJsonData) {
jQuery.each(yourJsonData[0].Items, function(key, customData) {
alert(customData.product_name);
});
});
答案 1 :(得分:2)
这段代码可以给你一个想法:
实施例:
alert(jsonData[0].Items[0].product_id);
尝试这个$ .each然后:
`$.each(jsonData[0].Items, function (i, item) {
alert(item.product_id);
alert(item.price);
alert(item.product_name);
});`
答案 2 :(得分:1)
试试这个json文件:
{
"category_id": "Clothes",
"Items": [
{
"product_id": 1,
"price": 50,
"product_name": "Shirts"
},
{
"product_id": 2,
"price": 60,
"product_name": "T-Shirt"
}
]
}
然后解析它:
$.each(jsonData.Items, function(index, value){
alert(value.product_name)
});
答案 3 :(得分:0)
多数民众赞成因为物品没有价值。
for(var i=0; i<jsonData.items.length; i++){
var youritem = jsonData.items[i]; /*this is your item*/
console.log(jsonData.items[i].product_name);/*one of your product names*/
}
这是你的代码:
jQuery.getJSON('http://localhost/magento/js/primitives/js/SpaceTreeRegion.json',
function(jsonData) {
jQuery.each(jsonData, function(currentRegionNode, jsonData) {
alert(this.items);/*this is an object also*/
alert(this.items[0].product_name)/*this is your child arrays property*/
alert(this.items[1].product_name)/*this is second one*/
});
});
所以你可以再次循环this.items
答案 4 :(得分:0)
将each
循环更改为类似的内容 -
jQuery.each(jsonData['Items'], function(currentRegionNode, jsonItemData) {
alert(jsonItemData.product_name); // will output 'Shirts ', 'T-Shirt'
});