Ajax Olayları

Ajax istekleri işleyebileceğiniz birkaç olay oluşturur. Burada olayların tetiklenme sırasına göre bir listesi var.

İki tip olay vardır.

Lokal Olaylar

Bunlar Ajax isteği içerisinde işleyebileceğiniz olaylardır. Şöyle ki:

 $.ajax({
   beforeSend: function(){
     // beforeSend olayı işleyicisi
   },
   complete: function(){
     // complete olayı işleyicisi
   }
   // ......
 });

Global Olaylar

Bu olaylar document nesnesinde tetiklenir. Olayı dinleyen işleyicileri çağırır. Bu olayları şöyle işleyebilirsiniz:

 $(document).on("ajaxSend", function(){
   $("#loading").show();
 }).on("ajaxComplete", function(){
   $("#loading").hide();
 });

Global olaylar Ajax isteği içinde global opsiyonu kullanarak şöyle devre dışı bırakılabilir:

 $.ajax({
   url: "test.html",
   global: false,
   // ...
 });

Olaylar

Burada Ajax olaylarının tetiklenme sırasına göre tam listesi var. İçeri girdilenmiş olaylar her bir Ajax isteğinde sırayla tetiklenir (global opsiyonu ile devre dışı bırakılanlar hariç). ajaxStart ve ajaxStop olayları tüm Ajax ihtiyaçlarında ortak olaylardır.


  • ajaxStart (global olay)
    Bu olay bir Ajax isteği başlatıldığında , başka çalışmakta olan Ajax isteği yoksa tetiklenir.

    • beforeSend (lokal olay)
      Bu olay bir Ajax isteği başlamadan önce oluşur. XMLHttpRequest nesnesini göndermeden önce değiştirmek için kullanılır (ihtiyaç olursa heading ve ayarları değiştirmek için).

    • ajaxSend (global olay)
      Bu olay da istek çalışmadan önce oluşur.

    • success (lokal olay)
      Bu olay eğer istek başarılı olursa oluşur (server'dan hata gelmemiş, veride hata olmamış).

    • ajaxSuccess (global olay)
      Bu olay da istek başarılı olunca oluşur.

    • error (lokal olay)
      Bu olay istek çalışırken hata olursa oluşur. Bir istekte hem success hem de error olayı oluşamaz.

    • ajaxError (global olay)
      Aynı lokal error olayı gibi oluşur.

    • complete (lokal olay)
      Bu olay isteğin başarılı olması ya da olmamasından bağımsız oluşr. Senkron istekler için bile her zaman complete olayı oluşur.

    • ajaxComplete (global olay)
      Bu olay da complete gibi Ajax isteği bitince oluşur.

  • ajaxStop (global olay)
    Bu olay eğer çalışmakta olan bir Ajax isteği kalmayınca oluşur.

.

.