Hallo Ich benutze JQUERY Dialog für ein Bestätigungs-Popup. Ich habe eine gemeinsame Javascript-Datei, in der ich eine Funktion hatte, die window.ShowModalDialog aufgerufen hat. Nun rufe ich von der gleichen Funktion das jquery-Dialogfeld auf, aber da es ein asynchroner Aufruf ist, gibt die aufrufende Funktion den Wert (ja/nein) zurück, ohne Werte aus dem Dialog zu übernehmen. Wie kann ich den richtigen Wert zurück (ja/nein)Jquery Dailog gibt den angegebenen Benutzerwert für das Bestätigungs-PopUp nicht zurück.
1
A
Antwort
0
Wenn ich das Problem richtig verstanden habe ... und wenn etwas nicht in Ordnung ist, fügen Sie das Beispiel des Codes
Versuchen Sie, diese Muster mit:
(function ($, undefined) {
$.fn.dialog = function (options) {
options = $.extend({}, $.fn.dialog.options, options);
return this.each(function() {
var dialog = $(this);
dialog.children(".ok").click(function (e) {
options.ok.call(this, e);
dialog.close();
});
dialog.children(".close").click(function (e) {
options.close.call(this, e);
dialog.close();
});
});
};
$.fn.open = function() {
this.get(0).showModal();
};
$.fn.close = function() {
this.get(0).close();
};
$.fn.dialog.options = {
ok : function() {},
close : function() {}
};
})(jQuery);
und mit Rückruf
var dialog = $(".myDialog").dialog({
ok : function() {
alert("ok!!");
}
});
alles Haben Sie in Rückruf benötigen, aber callbackhell vermeiden.
siehe example