Salut J'utilise JQUERY Dialog pour une fenêtre de confirmation. J'ai un fichier javascript commun, dans lequel j'avais une fonction qui appelait window.ShowModalDialog. Maintenant, à partir de la même fonction, j'appelle la boîte de dialogue jquery, mais comme il s'agit d'un appel asynchrone, la fonction appelante renvoie la valeur (oui/non) sans même accepter les valeurs de la boîte de dialogue. Comment puis-je retourner la valeur correcte (oui/non)Jquery Dailog ne renvoie pas la valeur donnée par l'utilisateur pour Confirmation PopUp.
1
A
Répondre
0
Si je comprends bien le problème ... et si quelque chose ne va pas, ajoutez l'exemple de votre code
Essayez d'utiliser ce modèle:
(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);
et en utilisant le rappel
var dialog = $(".myDialog").dialog({
ok : function() {
alert("ok!!");
}
});
Faites tout ce que vous avez besoin de rappel, mais il faut éviter callbackhell.
voir example