我有这个json响应,我想在Javascript中解析。
[{"video_source_id":100,"title":"YouTube Top Rated"},
{"video_source_id":101,"title":"YouTube Top Favorites"}]
我是Java Script JSON的新手。什么是解析并在网页中显示它的最佳方法?
这是我所拥有的,但我收到以下错误
TypeError:无法读取未定义的属性“0”
在
行document.getElementById("video_source_id").innerHTML = jsonObj.video_source_id[i];
完整代码:
function loadJSON()
{
var http_request = new XMLHttpRequest();
try{
// Opera 8.0+, Firefox, Safari
http_request = new XMLHttpRequest();
}catch (e){
// Internet Explorer Browsers
try{
http_request = new ActiveXObject("Msxml2.XMLHTTP");
}catch (e) {
try{
http_request = new ActiveXObject("Microsoft.XMLHTTP");
}catch (e){
// Something went wrong
alert("Your browser broke!");
return false;
}
}
}
var data_file = "/vcaWS/api/sources";
http_request.onreadystatechange = function(){
if (http_request.readyState == 4 )
{
// Javascript function JSON.parse to parse JSON data
var jsonObj = JSON.parse(http_request.responseText);
// jsonObj variable now contains the data structure and can
// be accessed as jsonObj.name and jsonObj.country.
for(var i=0;i<jsonObj.length;i++){
document.getElementById("video_source_id").innerHTML = jsonObj.video_source_id[i];
}
}
}
http_request.open("GET", data_file, true);
http_request.send();
}
答案 0 :(得分:0)
jsonObj
是一个数组。数组没有video_source_id property
。但是数组中的对象可以。因此,我认为您需要jsonObj[i].video_source_id
,即“访问video_source_id
中i
元素的jsonObj
属性”。