【发布时间】:2015-07-20 10:42:16
【问题描述】:
如何使用 JavaScript 或 jQuery 轻松地将这个多维链接的国家城市 JSON 解析为下拉列表?
这里有点意思
"North Korea":["Pyongyang",""],"Vatican City":[""],"Antarctica":["Antarctica"],"Bermuda":["Hamilton","Saint George","Somerset"],"Curaçao":["Willemstad","Vredeberg","Emmastad"],"Ecuador":["Quito","Pichincha","Guayas","Guayaquil","Ibarra","Riobamba","Ambato","Otavalo","Guamote","Libertad","Huaquillas","Olmedo","Durán","Florida","Machala","Loja","Manta","Nabon","Milagro","Tulcán","Atuntaqui","Daule","Pasaje","Playas","San Miguel","Puerto Francisco de Orellana","Loreto","Montecristi","Hacienda Santa Catalina","Zamora","Vinces","Quevedo","Hacienda Duran","Bahia de Caraquez","Salinas","Hacienda Ibarra","Hacienda Bolivia","El Naranjal","Banos"],"South Africa":["Johannesburg","Sandton", ... etc
http://www.3dz.com/media/job/countriesToCities.json
我尝试过类似的东西
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function () {
if(xhr.readyState === 4) {
var countriesToCities = JSON.parse(xhr.responseText) ;
var statusHTML= '<select class ="bulleted">';
for (var i = 0; i < countriesToCities.length - 1; i+=1) {
{
statusHTML +='<option>';
statusHTML+= countriesToCities[i].name;
statusHTML+= '</option>';
}
statusHTML+='</select>';
document.getElementById('countriesToCitiesList').innerHTML = statusHTML;
}
};
xhr.open('GET', 'http://www.3dz.com/media/job/countriesToCities.json');
xhr.send();
输出应该是这样的:
<select>
<option value="country1">country1</option>
<option value="country2">country2</option>
<option value="country n">country n</option>
</select>
对于国家 1
<select>
<option value=" city 1">city 1</option>
<option value="city 2">city 2</option>
<option value="city n">city n</option>
</select>
请帮忙。
【问题讨论】:
-
你的代码会发生什么?
标签: javascript php jquery json multidimensional-array