SORU
16 NİSAN 2009, PERŞEMBE


Nasıl jQuery bir Ajax çağrısı için bekleyin dönmeden önce bitirmek için yapabilirim?

Giriş gerektiren bir sunucu tarafı işlevi var. Eğer kullanıcı giriş yapmış ise işlevini başarı 1 dönecektir. Değilse, işlev giriş-sayfa dönecektir.

Bu fonksiyon Ajax kullanarak Ara ve bir WordPress kullanmak istiyorum. Ben ne bir tıklama fonksiyonu üzerinde uygulanan sıradan bir bağlantı isteği gönderin. Eğer kullanıcı veya işlev başarısız olur kaydedilir değilse, Ajax-çağrı href tetikler, böylece doğru dönmek istiyorum.

Aşağıdaki kodu kullanıyorum ancak Ajax çağrısı önce fonksiyon çıkışları yapılır.

Kullanıcı nasıl incelikle loginpage için yönlendirebilir miyim?

$(".my_link").click(
    function(){
    $.ajax({
        url: $(this).attr('href'),
        type: 'GET',
        cache: false,
        timeout: 30000,
        error: function(){
            return true;
        },
        success: function(msg){ 
            if (parseFloat(msg)){
                return false;
            } else {
                return true;
            }
        }
    });
});

CEVAP
16 NİSAN 2009, PERŞEMBE


Eğer istemezsin diye $.() ajax hemen geri dönmek için işlev, yanlış zaman uyumsuz seçeneği ayarlayın:

$(".my_link").click(
    function(){
    $.ajax({
        url: $(this).attr('href'),
        type: 'GET',
        async: false,
        cache: false,
        timeout: 30000,
        error: function(){
            return true;
        },
        success: function(msg){ 
            if (parseFloat(msg)){
                return false;
            } else {
                return true;
            }
        }
    });
});

Ama bu ajax noktasına sayaç olacağını ayrıca şuna dikkat çekmek istiyorum ki, hata ve başarı fonksiyonları yanıtı işlemek gerekir. Bu fonksiyonları tek yanıt sunucudan alındığında çağrılacak.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ExcelTutorials

    ExcelTutoria

    2 Mayıs 2009
  • FD2097

    FD2097

    21 HAZİRAN 2009
  • oHeymarvin

    oHeymarvin

    11 Temmuz 2013