因为我是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

10-06 04:22
查看更多