【发布时间】:2017-03-10 15:30:15
【问题描述】:
我有一个包含在本地 Json 文件中的数据结构。我想使用$.getJSON() 加载它。
json文件locations.json:
{locations:
[{value: "Port Kelang",label: "Port Kelang",category: "Malaysia"},
{value: "Pusan",label: "Pusan",category: "South Corea"},
{value: "Qingdao",label: "Qingdao",category: "China"}]}
javascript 文件:
$.getJSON("locations.json", function(data){
//do something
});
使用 Chrome 时出现错误:
XMLHttpRequest cannot load file:///E:/locations.json. Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource.
虽然我在 Firefox 中遇到了另一个错误:
XML Parsing Error: not well-formed Location: file:///E:/locations.json Line Number 1, Column 1:
有什么帮助吗?提前致谢。
【问题讨论】:
-
通过另一台服务器托管这些文件。 ftp 可能吗?
-
如果您阅读 Chrome 的错误消息,它会告诉您出了什么问题。此外,正如 Firefox 告诉您的那样,您的 JSON 格式不正确。必须引用属性名称。见json.org
-
@MikeMcCaughan 实际上,即使引用了属性名称,我在 Firefox 中也遇到了同样的错误。
-
...那么您的 JSON 有其他问题。使用像 jsonlint.com 这样的 linting 工具来确保你的 JSON 是 JSON。
标签: javascript jquery json getjson