我有以下 JSON 数据,我想从中填充一个 html 选择元素,请我看不到如何为每个循环使用这样的 json 数据。谢谢。
//JSON
[{
"group": "US (Common)",
"zones": [{
"value": "America/Puerto_Rico",
"name": "Puerto Rico (Atlantic)"
}, {
"value": "Pacific/Honolulu",
"name": "Honolulu (Hawaii)"
}]
}, {
"group": "Africa",
"zones": [{
"value": "Africa/Tunis",
"name": "Tunis"
}, {
"value": "Africa/Windhoek",
"name": "Windhoek"
}]
}]
并且 html 选择元素看起来像:
<select id="timeZones"></select>
这是不工作的 JS 代码:
var $select = $('#timeZones');
$.ajax({
url: 'timezones.json',
dataType: 'JSON',
success: function (data) {
$.each(data, function (i, val) {
$select.append('<OPTGROUP LABEL="' + val[i].group + '"><OPTION VALUE="' + val[i].zone[i].value + '">' + val[i].zone[i].name + '</OPTION></OPTGROUP>');
})
},
error: function () {
alert("JSON ERROR");
}
});