Jquery 从json数组中获取第一个值
我有来自数据库的JSON,其形状如下:Jquery 从json数组中获取第一个值,jquery,json,Jquery,Json,我有来自数据库的JSON,其形状如下: var data = { "zone01": [{ "region": "North", "state": "New York", "county": "Albany", "code": "01" }, { "region": "North", "state": "New York", "county": "Albany",
var data = {
"zone01": [{
"region": "North",
"state": "New York",
"county": "Albany",
"code": "01"
}, {
"region": "North",
"state": "New York",
"county": "Albany",
"code": "05"
}, {
"region": "North",
"state": "Maine",
"county": "Auburn",
"code": "07"
}],
"zone02": [{
"region": "South",
"state": "Florida",
"county": "Gainseville",
"code": "82"
}, {
"region": "South",
"state": "Florida",
"county": "Macclenny",
"code": "73"
}]
};
我正在尝试获取第一组值“zone01”、“zone02”等的列表。。。以填充选择输入。通过选择区域,您可以从列表中选择,但我似乎无法获得区域列表
我试过:
$.each(data, function(index, element){
var zone = JSON.stringify(element.index);
$('#zone').append('<option value="'+zone+'">'+zone+'</option>');
});
$。每个(数据、函数(索引、元素){
var zone=JSON.stringify(element.index);
$(“#区域”)。追加(“”+区域+“”);
});
但只是不确定。这是我的建议
更新完成的代码
这是我的竞争代码:您只需要使用
索引
,而不是元素。索引
var zone = JSON.stringify(index);
元素
指冒号右侧的值。它没有索引
属性
索引
指冒号左侧的标识符。这正是您想要的。$。每个(数据、函数(k、v){
$.each(data, function(k,v){
var zone = k;
$('#zone').append('<option value="'+zone+'">'+zone+'</option>');
});
可变区=k;
$(“#区域”)。追加(“”+区域+“”);
});
.我认为您确实在寻找第一组索引。您可能可以删除
var区域
行,只需在第二个循环行上将区域
替换为索引
如果您有以下情况,也可供将来参考:
obj = { "akey": 5 };
index = "akey";
您似乎试图将该值检索为“obj.index
”。检索数字5的方法如下
obj[index] // evalutes to 5
设置
区域
,如下所示
var zone = JSON.stringify(index);
我不知道如何使用jQuery.each执行此操作,但您可以获得如下区域名称:
for (var zone in data) {
$(#zone").append('<option value="'+zone+'">'+zone+'</option>');
}
for(数据中的var区域){
$(#区域”)。附加(“”+区域+“”);
}
顺便说一句,可以更清楚地称之为键
或其他什么,而不是索引
。