Jquery UI对话框关闭事件所有可能的方式合二为一

时间:2017-09-28 05:54:07

标签: jquery jquery-ui dialog

jquery中关闭对话框事件(使用关闭按钮)可由

处理
close: function(e, ui) {
        // do your thing...
}

我也试过了closeOnEscape: false,,但这个选项对我来说失败了。我不知道为什么(我在一个上下文中有2个对话框)因为一个对话框没有关闭,而另一个对话框关闭。然后还有另一种方法可以使用X按钮关闭对话框。

  

我想知道是否有一个事件可以处理关闭jQuery UI对话框的所有方法?

更新

我不是在寻找一种方法来关闭触发事件的对话框。我想知道将触发关闭的事件,以便我可以在关闭对话框

时执行功能

3 个答案:

答案 0 :(得分:1)

你可以写:

$('.selector').dialog('close');

例如:(假设对话框的id是'my-dialog')

$("#my-dialog").dialog("close");

如果要关闭已打开的同一个对话框,可以使用 this

$(this).dialog('close'); 

答案 1 :(得分:1)

检查JQuery官方网站,在这里你将获得所有信息:你可以通过StackOverflow上的Answers获得很多相同类型的问题(已经被问到)!  https://api.jqueryui.com/dialog/#method-close

JQuery网站的代码示例:
使用指定的close回调初始化对话框:

$( ".selector" ).dialog({
  close: function( event, ui ) {}
});

答案 2 :(得分:0)

参考:Close event

$('.dialog').dialog({
close: function(e, ui) {
    // do your thing...
 }
});

立即关闭所有对话框

$(".ui-dialog-content").dialog("close");

因为所有对话框都继承自类.ui-dialog-content

  

即使对话框未打开也会被触发,所以尝试在对话框关闭方法中使用它(上图)