可能是以下错误的原因
使用jQuery Ajax从本地服务器获取数据:它适用于IE8,但使用Firefox4会出错:(仅通过“错误”消息输入错误函数)。 Firebug显示数据正在变得正确。可能是以下错误的原因
正在运行的网址是: http://localhost:47092/testajax
的相关jQuery代码是:
$.ajax(
{
type: "GET",
url: "http://localhost/test",
processData: true,
data: {},
dataType: "json",
success: function (data, code, jqx) {
console.log(data);
},
error: function (jqx, err, ex) {
console.log(ex);
}
}
);
什么可以是错误的原因是什么?我正在使用jQuery 1.5.2
另外,我正在使用jQuery.support.cors = true来启用跨域脚本编写。
听起来就像您遇到了跨站点脚本保护。
http://localhost:47092/testajax
http://localhost/test
协议,主机名和端口必须相同。否则,你必须使用像JSONP这样的解决方案。
我已经使用jQuery.support.cors = true – user705414 2011-05-23 11:31:21
你是正确的,但我想知道jQuery.support.cors = true不适用于Firefox 4 – user705414 2011-05-23 11:39:54
'jQuery.support.cors'是一个只读属性 - 你可以不启用使用它的东西,其目的是功能检测。你是否在'http:// localhost/test'的服务器端实现了CORS(以及相应的HTTP头文件)? https://developer.mozilla.org/en/http_access_control – 2011-05-23 11:50:40
localhost:47092与localhost不同。在Ajax调用中使用相对URL,而不是绝对的。
请注意,除非Firebug处于打开状态,否则'console.log'将不确定。 – Spudley 2011-05-23 11:26:40
域名'localhost'不存在于Internet中^^它只能在本地访问。 – reporter 2011-05-23 11:28:00
我不认为任何人都能够查看您的链接测试网站'http:// localhost:47092/testajax' ... – 2011-05-23 11:28:07