拉出我的头发请有人有解决方案吗?
在readystate事件处理程序中,我只是读取responseText - 它返回为emptystring / blank,在Windows Vista上使用FireFox 3.5 + Firebug时为100次,在Mac上使用FireFox 3.5时为10次中的1次OS。
奇怪的是,responseText似乎在执行断点和读取值所需的时间内填充,例如:
var responseText = request.responseText;
if(responseText == "") {
alert("breakpoint here");
}
当断点命中时,responseText为emptystring但request.responseText具有正确的响应。
看起来似乎是FireFox / FireBug中的一种计时问题或错误,还是有人有想法?
谢谢! - 布赖恩
答案 0 :(得分:0)
我遇到了同样的问题。它在IE中工作,但不是FF。问题是调用ajax的页面是一个安全页面,生成响应的页面不是安全页面。我不确定为什么FF让它有时工作,但IE会给我一个提示。我使两个页面都安全,似乎解决了这个问题。
答案 1 :(得分:-1)
我有同样的问题,但只是在Mac OS机器上,问题是Firefox将ajax响应视为“跨域调用”,在任何其他机器上工作正常,我找不到任何有关此的帮助(我认为这是一个firefox的实现问题),但我将证明服务器端的下一个代码:
header('Content-type:application / json');
确保浏览器“获取json数据”......