Эта функция вызывается, когда AJAX-запросы readyState == 3,Reverse Ajax обнаружения responseText
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 является unavailabe? В частности, для IE7/8 я не поддерживаю 6 или ниже.
Я попытался,
if('responseText' in context) return false;
, который не работает, потому что это в контексте, просто не доступны, и
try{context.responseText;} catch(x){return false;}
, но это, кажется, как взломать.
Я просто пойти с последним 'Try/catch' один вы перечислили. Это похоже на хак, конечно, но это то, что иногда заставляют вас делать браузеры. Кроме того, 'readyState == 3' можно вызвать несколько раз, если я правильно помню. Почему бы вам не подождать до 4? –
Это комета, я нажимаю json, но не закрываю соединение, поэтому я могу многократно пересылать данные в браузер, прежде чем перезапустить connecton. – Andrew
способ 'try/catch' не кажется таким взломанным для меня (не то, что я авторитет по этому вопросу) ... я думаю, что это хорошее решение вашей проблемы – davin