SORU
7 Mart 2011, PAZARTESİ


Zaman aşımı ayarlamak için ajax () jQuery

$.ajax({
    url: "test.html",
    error: function(){
        //do something
    },
    success: function(){
        //do something
    }
});

Bazen success işlevi iyi çalışıyor, bazen çalışmıyor.

Nasıl bu ajax isteği için zaman aşımı ayarlarım? Eğer çıkış süresi ise, 3 saniye sonra bir hata gösterir.

Sorun, ajax isteği bitene kadar blok donuyor. Eğer sunucu bir süre kapalı, ama hiç bitmeyecek.

CEVAP
7 Mart 2011, PAZARTESİ


Burada ve bir WordPress kullanmak eski ve yeni paradigmes içinde zaman aşımı ayarı algıladığını gösteren bazı örnekler.

jQuery 1.8

$.ajax({
    url: "/getData",
    timeout:3000 //3 second timeout
}).done(function(){
    //do something
}).fail(function(jqXHR, textStatus){
    if(textStatus === 'timeout')
    {     
        alert('Failed from timeout'); 
        //do something. Try again perhaps?
    }
});​

Live Demo

bir WordPress kullanmak <= 1.7.2

$.ajax({
    url: "/getData",
    error: function(jqXHR, textStatus){
        if(textStatus === 'timeout')
        {     
             alert('Failed from timeout');         
            //do something. Try again perhaps?
        }
    },
    success: function(){
        //do something
    },
    timeout:3000 //3 second timeout
});

HabertextStatus(ya . param ^strong>jqXHR.statusText) hatanın ne olduğunu bildiririz. Bu başarısızlık bir zaman aşımı neden olduğunu bilmek istiyorsanız, bu yararlı olabilir.

hata(jqXHR, textStatus, errorThrown)

Eğer çağrılacak bir işlev istek başarısız olur. Bu fonksiyon üç argüman alır: jqXHR ( jQuery 1.4.x, XMLHttpRequest), bir dize türü tanımlayan nesne ve isteğe bağlı bir özel durum oluştu eğer bir hata oluştu ise nesne. İkinci bağımsız değişken için olası değerler (null dışında)"", zaman aşımı vardır "", ""ve "". parsererror durdurma hatası Bir HTTP hatası oluştuğunda, errorThrown olarak HTTP durum, bu tür metinsel kısmını alır "Olmaz" ya da "İç Sunucu Hatası." JQuery 1.5, hata olarak ayar fonksiyonları bir dizi kabul edebilir. Her işlev çağrılır sırayla. Not: Bu işleyici etki alanları arası komut dosyası için "değil," ve JSONP istekleri.

src: http://api.jquery.com/jQuery.ajax/

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 8lacKy

    8lacKy

    30 Mart 2009
  • Candyrat Records

    Candyrat Rec

    10 Mayıs 2006
  • dcigs

    dcigs

    9 EYLÜL 2006