我使用简单的模态窗口在模态窗口弹出窗口中显示动态内容(表格)。当我在模态窗口中显示数据时,close事件正常工作。
但如果我在关闭jquery弹出对话框后在简单模态窗口上显示另一个jquery对话框弹出窗口,我的简单模态窗口弹出onClose事件将无法正常工作。
// Base Modal popup
$('#simple').modal({
onShow: function() {
alert("activated");
},
onClose: function() {
alert("deactivated");
$.modal.close();
}
});
// Jquery popup
$('#kick').dialog({
//ajax calls to show data
});
即使我使用$.modal.close();
,关闭事件仍然无法正常工作 请...请帮助我......我已经花了一天时间......
答案 0 :(得分:0)
因为我在这台计算机上没有VS2010并且无法确认实际语法,所以只是一些想法:(
$('#simple').close();
$(this).modal.close();
this.close();
但是,这就是我们关闭对话框的方式:
$(this).dialog("close");
所以这可能有用吗?
$(this).modal("close");
答案 1 :(得分:0)
// I get rid of this
$("#basic-modal-content").modal( {
onShow : function() {
// anything you want to do before
},
onClose : function() {
// when closing popup anything you wanna do
var a = this;
a.close();
}
});
答案 2 :(得分:0)
为此,您必须在关闭第一个弹出窗口后打开第二个弹出窗口,大约需要2秒钟。因此,如果您使用settimeout()函数并通过提供2秒延迟或大于此时调用第二个弹出。它会工作。因为,这不是一个正确的方法。但它实际上适合我。
我正在使用Simple modal jquery插件:这是代码:
$('#forgot_password_modal').click(function (e) {
$.modal.close(); // this is written to close all the popups.
setTimeout(function(){
$('#forgot_password_form').modal({ //to open a second popup
minHeight:570,
minWidth:600,
maxWidth:671,
opacity: 90,
onOpen: function(dialog) {
dialog.overlay.fadeIn('slow', function() {
dialog.data.hide();
dialog.container.fadeIn('slow', function() {
dialog.data.slideDown('slow');
});
});
},
onClose: function(dialog) {
dialog.data.fadeOut('slow', function() {
dialog.container.slideUp('slow', function() {
dialog.overlay.fadeOut('slow', function() {
$.modal.close(); // must call this!
});
});
});
}});
}, 2000);
return false;
});