更多相关:https://blog.csdn.net/qq_40085888/article/details/105440845
// 第一种
$(".panel-tool-close").click();
$(".panel-tool-close")相当于弹出框右上角的 “×”。当你想用ajax等方法关闭dialog弹出层,这个就可以用。
// 第二种
$(function(){
$("#×××").dialog({
onClose: function () {
// 想要执行的内容;
}
});
})
在 $(’#×××’).dialog(‘close’); 执行后触发
// 第三种
使用easyui-window初始化一个窗口,由于窗口上方的按钮都是自动组装生成。故很难找到监听事件源(平常做监听,都必须找到事件源)。但是easyui提供了一系列的监听方法:onClose,onBeforeColse…的方法。
// 弹框
<div id="win" class="easyui-window" title="新增互动类型" closed="true" style="width:300px;height:220px;padding:5px;"></div>
// 点击关闭的x后触发事件监听:
$(document).ready(function(){
$('#win').window({
onBeforeClose:function(){
alert(111);
}
});
});
// 第四种
- 使用$(this).dialog(‘close’);来关闭dialog时,仅仅是隐藏,而不会完全消失,如果此时,另外一个按钮或者请求也需要弹出dialog时,页面上面会出现两个相同的dialog,元素id也会一致,
- 采用$(this).dialog(‘destroy’);来关闭销毁dialog时,页面的dialog会被删除掉,建议,不显示定义dialog弹框,把请求页面和展示页面分开。
- 如果这个对话框在页面中可以反复打开,也许是因为缓存的原因,里面的数据会是上次打开时,操作后的样子,有时候可能会带来一些意想不到的异常。因此,关闭这个对话框的时候,最好将它销毁:
// 有缓存
$("#dlg_Add").dialog({
onClose: function () {
alert("blablabla");
}
});
// 彻底销毁 第二次无法打开?
$("#dlg_Add").dialog({
onClose: function () {
alert("blablabla");
$(this).dialog('destroy');//销毁
}
});
参考:https://www.cnblogs.com/leftfist/p/4257817.html