【发布时间】:2017-02-08 08:59:18
【问题描述】:
我的问题
在我的 JSON 文件中,我在一个对象中有一个对象,其值是一个键/值对数组。我无法输出每个键名及其值。
我的代码
menu.json
{"themenu":[
{
"stuff": "stuffs",
"pages": [
{"name1": "page111"},
{"name2": "page222"},
{"name3": "page333"}
]
}
]}
menu.js
$(function() {
$.getJSON('menu.json', function(data) {
$(data.themenu).each(function() {
var stuff = this.stuff;
alert(stuff); // alerts 'stuffs'
$(this.pages).each(function(key, value) {
var pageName = this.key;
var pageUrl = this.value;
alert(pageName + ' ' + pageUrl);
})
})
})
})
我需要什么
我想输出键名和对应的值,这样就和这个一样了……
alert('name1 page111');
alert('name2 page222');
alert('name3 page333');
我的尝试
我尝试了一些方法,包括...
$(data.pages).each(function(key, value) {
var pageName = this.key;
var pageUrl = this.value;
})
...还有一堆我不好意思发帖的巫毒教。
【问题讨论】:
-
试试
var pageName = Object.keys(this)[0], pageUrl = this[pageName]; }) -
@haim770 !我喜欢你如何使用变量来获取值!请发布为答案,以便我接受。 :)