Görmezden Jquery Ajax hata işleme durduruldu
Ajax aramalar için küresel hata işleme yöntemi yapmak istiyorum, bu şimdi ben ne var:
$.ajaxSetup({
error: function (XMLHttpRequest, textStatus, errorThrown) {
displayError();
}
});
aborted
hatayı görmezden gelmek istiyorum. errorThrown
boş ve textStatus
error
. Nasıl aborted
kontrol edebilirim?
CEVAP
Aynı dava ile başa çıkmak için başka bir işim yoktu. 1 tarafından rahatsız edilebilir, uzun süren bu ajax çağrıları var üzerinde çalışıyorum uygulaması) kullanıcı uzak gezinmek veya 2) geçici bağlantı/sunucu hatası gibi bir şey. Hata işleyicisi tek bağlantı/sunucu hatası ve kullanıcı uzağa gitmek için koşmak istiyorum.
Ben ilk Alastair Pitts' cevabı, ancak her ikisi de iptal istekleri ve bağlantı hatası 0 durum kodu ve readyState ayarlayın çünkü işe yaramadı. Sonraki, sieppl cevabı çalıştım; ayrıca her iki durumda da, hiç bir cevap verilir, çünkü, bu nedenle böyle bir başlık işe yaramadı.
Benim için işe yarayan tek çözüm penceresi için bir dinleyici.sayfa kaldırılmış olduğunu belirtmek için global bir değişken ayarlar onbeforeunload,. Hata işleyicisi sonra kontrol edin ve sadece hata sayfası kaldırıldı eğer sadece işleyicisi arayabilirsiniz.
var globalVars = {unloaded:false};
$(window).bind('beforeunload', function(){
globalVars.unloaded = true;
});
...
$.ajax({
error: function(jqXHR,status,error){
if (globalVars.unloaded)
return;
}
});
jQuery Ajax hata işleme, Haritayı özel...
jQuery ajax (jsonp) bir zaman aşımı yo...
JQuery nasıl dolar.ajax hata yanıtı me...
ASP.NET MVC Ajax Hata işleme...
Kullanmalıyım .() yapılır .() başarısı...