<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript">
var Ajax = function ()
{
$.getJSON ("data.json", function (data)
{
$.each (data, function (i, item)
{
alert(item.name);
});
});
}
data.json
[
{
"name": "联泰环保",
"code": "732797",
"tatalNum": "5334",
"topPrice": "21.00",
"price": "5.96",
"date": "04-05",
"rate": "0.0346"
}
]
同时在同级目录下放置data.json文件。直接用浏览器打开后没有返回数据,右击鼠标审查元素,出现以下提示,意思就是不能跨域。
Cross origin requests are only supported for protocol schemes: http, data,chrome-extension, https, chrome-extension-resource.
查了一圈发现网上有解决办法如下(没有尝试,但是评论说可以):
给浏览器传入启动参数(allow-file-access-from-files),允许跨域访问。
Windows下,运行(CMD+R)或建立快捷方式:
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --allow-file-access-from-files
但是又不想这么改怎么办?
启动一个服务(就是运行一个如nginx的服务,需要安装),将此文件和data.json文件移动nginx运行目录下。在浏览器输入:localhost:端口号/路径
之后发现alert成功。