当ajax请求readyState == 3,
时,将调用此函数function(context, xhrobj, itself){
//Test if context.responseText is available here.
var text = context.responseText;
//Do stuff
}
如果context.responseText可用,我将如何测试?我目前正在这样做,
if ($.browser.msie) return false;
但我真的不想做浏览器检测,有没有办法检测context.responseText是否不可用?特别是对于IE7 / 8,我不支持6或更低版本。
我试过了,
if('responseText' in context) return false;
不起作用,因为它在上下文中,只是不可用,
try{context.responseText;} catch(x){return false;}
但这似乎是一个黑客。
答案 0 :(得分:0)
Context不会初始化响应对象是否为text,xml。因此,除非你为响应的实际创建/初始化/填充实现某种观察者,否则第二次尝试... catch似乎做你需要它做的事情。这不是一个黑客,因为context.responseText没有创建,因此未初始化。
我将继续监控这个帖子,但我认为恕我直言你的方法是合适的。
祝你好运,约什