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.
.
.