Javascript 不同的浏览器对jqueryajax调用得到不同的结果
我试图进行$.ajax调用,但在不同的服务器上得到不同的结果 在我的js文件中,我有以下代码Javascript 不同的浏览器对jqueryajax调用得到不同的结果,javascript,jquery,html,ajax,Javascript,Jquery,Html,Ajax,我试图进行$.ajax调用,但在不同的服务器上得到不同的结果 在我的js文件中,我有以下代码 function getData () { $.ajax({ async: false, type:'GET', contentType: "application/json", url: 'sample.json', dataType: 'json', success:function(result
function getData () {
$.ajax({
async: false,
type:'GET',
contentType: "application/json",
url: 'sample.json',
dataType: 'json',
success:function(result){
alert("successful");
},
error: function (xhr, status) {
alert("failed");
}
});
}
js文件包含在一个HTML文件中,其中有一个按钮,其onclick方法为getData()
我的问题是,如果我在IE或Chrome中打开html文件,它会弹出一个“失败”警告窗口,但是如果我在Firefox中打开html,它会弹出一个“成功”窗口
已解决:
我在试图从本地html文件而不是服务器上运行该函数时遇到了问题。在服务器上运行解决了这个问题。这是浏览器中的一种安全措施,防止访问文件系统。Firefox只是有一个不同的安全措施,允许文件访问。使用Web服务器不会遇到此问题。您是在本地文件系统上,还是在本地或远程服务器上执行此操作?您使用的是原始HTML文件吗?或者您实际上正在运行服务器?为什么
async:false
?这不是AJAX的重点吗?对不起。。只是澄清一下,不是在服务器上运行,而是在本地html文件上运行。@ChrisZ但它是,默认情况下,file://协议不允许使用ajax。但它可以通过打开一些FlagstHank来启用。我认为你的答案是正确的。我现在正在服务器上运行,问题消失了。