תיאור:
מצרף פונקציה, שמופעלת כל פעם אחרי סיום בקשת
Ajax.
זה
אירוע
Ajax
.
ארגומנטים
ajaxComplete( handler(event, XMLHttpRequest, ajaxOptions) )
הוספה בגרסה: 1.0
handler(event, XMLHttpRequest, ajaxOptions)
פונקציה להפעלה.
כל פעם שמסתיימת בקשת
Ajax,
jQuery
מפעיל אירוע
ajaxComplete.
כל המטפלי אירועים שנרשמו יחד עם שיטה
.ajaxComplete()
יופעלו באותו זמן.
כדי לצפות בשיטה הזאת בפעולה אנחנו יכולים להגדיר בקשת טעינה בסיסית של Ajax:
<div class="trigger">Trigger</div> <div class="result"></div> <div class="log"></div>
אנחנו יכולים לצרף מטפל אירועים שלנו לכל אלמנט:
$('.log').ajaxComplete(function() {
$(this).text('Triggered ajaxComplete handler.');
});
עכשיו, אנחנו יכולים לבצע בקשת
Ajax
באמצעות כל שיטה של
jQuery:
כאשר משתמש לוחץ כפתור ובקשת Ajax מסתיימת, מוצגת הודעה ב-div עם מחלקה log.
שימו לב:
מכיוון ש-
.ajaxComplete()
מיושם כשיטה של אובייקט מופעים של
jQuery,
אנחנו יכולים להשתמש במילת מפתח
this,
כמו שעשינו כאן,
כדי להפנות אלמנטים שנבחרו בתוך פונקציה של קריאה חוזרת.
כל מטפלי אירועים
ajaxComplete
מופעלים,
ללא קשר איזה בקשה של
Ajax הסתיימה.
אם אנחנו צריכים להבדיל בין הבקשות,
אנחנו יכולים להשתמש בפרמטרים שהועברו למטפל אירועים.
כל פעם שמטפל
ajaxComplete מופעל,
מועברים אובייקט אירוע,
אובייקט XMLHttpRequest,
ואובייקט הגדרות שהשתמש בייצירת בקשה.
לדוגמה, אנחנו יכולים להגביל קריאה חוזרת שלנו רק לאירועי מטפלים קשורים ל-
URL
הספציפי:
$('.log').ajaxComplete(function(e, xhr, settings) {
if (settings.url == 'ajax/test.html') {
$(this).text('Triggered ajaxComplete handler.');
}
});
דוגמה:
מציג הודעה כשה בקשת Ajax הסתיימה.
$("#msg").ajaxComplete(function(event,request, settings){
$(this).append("<li>Request Complete.</li>");
});
האם מידע זה היה מועיל?

