因为我是json的新手,所以您能帮我吗?我的数据文件位于此URL-http://www.thedailystar.net/json/category
现在,我要以以下格式显示它:
<ul id="smenu">
<li></li>
</ul>
那么,如何获得从url获取数据并运行循环以将其打印出来的请求?我已经尝试过此代码,但没有任何反应。提前致谢 :)
var xmlhttp = new XMLHttpRequest();
var url = "http://www.thedailystar.net/json/category";
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
var myArr = JSON.parse(xmlhttp.responseText);
myFunction(myArr);
}
}
xmlhttp.open("GET", url, true);
xmlhttp.send();
function myFunction(arr) {
var out = "";
var i;
for (i = 0; i < arr.length; i++) {
out += '<li href="' + arr[i].name + '">' +
arr[i].display + '</li><br>';
}
document.getElementById("smenu").innerHTML = out;
}
最佳答案
如果您的JavaScript未在thedailystar.net域上运行,则将是跨域请求。在这种情况下,您将需要在资源服务器(http://www.thedailystar.net/json/category)上启用CORS。
大多数时候,要启用CORS,服务器需要在响应中返回以下标头:
Access-Control-Allow-Origin: *
有关CORS的更多信息:http://enable-cors.org/server.html