我在与 index.htm 相同的目录中有 6 个 json 文件。每个json结构里面都保存了游戏数据。我想让用户选择一个文件并加载其关联的 json 数据结构。我该如何检索这些数据?
我试过用
var myjson = new Object();
$.getJSON("myJSON.json", function(json) {
myjson = JSON.stringify(json);
console.log(myjson);
});
这给我一个 XMLHttpRequest 错误(不支持跨源请求)。
最佳答案
您的执行没有问题——尽管就像您帖子中的评论所暗示的那样,您需要更改您正在使用的协议(protocol)。实际上只需使用 http://127.0.0.1/mypage.html
而不是 file://home/website/mypage.html
加载 HTML 页面,您就可以保留您的 javascript 相同。
除此之外,您可能还需要考虑 myJSON.json
文件中的数据。我注意到如果 JSON 数据包含 function
定义,那么它将导致 $.ajax()
或在这种情况下 $.getJSON()
抛出一个解析错误。
所以这行不通
{
"json" : function () {
alert("HI");
},
"hello" : 432
}
但这会起作用
{
"json" : "5",
"hello" : 432
}
关于javascript - 如何检索位于不同文件中的 JSON 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31821841/