odaler @ jQuery-Dialog bei ajaxStart-Ereignis
Ich versuche, über die Ereignisse ajaxStart, ajaxStop / ajaxComplete ein modales Dialogfeld der jQuery-Benutzeroberfläche als Ladeanzeige zu verwenden. Wenn die Seite ausgelöst wird, lädt ein Ajax-Handler einige Daten, und das modale Dialogfeld wird einwandfrei angezeigt. Es wird jedoch niemals das Dialogfeld ausgeblendet oder geschlossen, wenn das Ajax-Ereignis abgeschlossen ist. Der vom lokalen Server zurückgegebene Code ist sehr klein. Das eigentliche Ajax-Ereignis ist also sehr schnell.
Hier ist mein aktueller Code für die Modal Div:
$("#modalwindow").dialog({
modal: true,
height: 50,
width: 200,
zIndex: 999,
resizable: false,
title: "Please wait..."
})
.bind("ajaxStart", function(){ $(this).show(); })
.bind("ajaxStop", function(){ $(this).hide(); });
The Ajax Event ist nur eine einfache Vanille$.ajax({})
GET Methodenaufruf.
Aufgrund einiger Suchanfragen hier und bei Google habe ich versucht, den AjaxStop-Handler so zu ändern, dass er @ verwende$("#modalwindow").close()
, $("#modalwindow").destroy()
, etc. (#modalwindow wird hier als expliziter Kontext bezeichnet).
Ich habe auch versucht mit dem Standard$("#modalwindow").dialog({}).ajaxStart(...
auch
Soll ich die Ereignisse an ein anderes Objekt binden? Oder rufen Sie sie aus dem$.ajax()
Event abschließen?
Ich sollte erwähnen, ich teste auf dem neuesten IE8, FF 3.6 und Chrome. Alle haben den gleichen / ähnlichen Effekt.