首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >JQuery对话框在“x”上以与取消相同的方式关闭

JQuery对话框在“x”上以与取消相同的方式关闭
EN

Stack Overflow用户
提问于 2011-02-22 04:05:07
回答 3查看 6.7K关注 0票数 1
代码语言:javascript
运行
复制
$("#termSheetPrinted").dialog({
            autoOpen: false,
            resizable: true,
            height: 800,
            width: 950,
            position: 'center',
            title: 'Term Sheet',
            modal: true,
            buttons: {
                "Print": function () {
                    $("#termSheetPrinted").jqprint();
                },
                "Cancel": function () {
                    $("#termSheetPrinted").html('');
                    $(this).dialog("close");
                }
            }
        });

此对话框出现在窗口顶部,并带有一个“x”以将其关闭。我想让$(this).dialog("close");在这个'x‘被点击的时候运行,就像’取消‘按钮一样。

我该怎么做呢?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-02-22 04:11:14

我不知道有什么方法可以明确地改变单击"x“时发生的事情,但您可以创建"close”或"beforeClose“事件处理程序,以确保在关闭对话框时发生您需要发生的事情。

票数 2
EN

Stack Overflow用户

发布于 2011-02-22 04:19:26

我将创建一个单独的函数,该函数在Cancel按钮单击和beforeClose事件上调用。(请参阅上面指向close和beforeClose事件的JacobM链接。)

下面是我放在一起的一个超级简单的jsFiddle,它展示了如何执行此操作以及从cancel按钮单击和beforeClose事件调用该函数时的影响(以及它们的触发顺序)。理想情况下,您只需在Cancel按钮函数中使用$(this).dialog("close");,并将$("#termSheetPrinted").html('')调用移动到提取的函数即可。

票数 0
EN

Stack Overflow用户

发布于 2014-12-01 20:23:16

对公认的答案有更多的解释(对于需要更多帮助的所有人;- ):

假设您想要在用户按下x键时在由其id标识的字段中设置焦点

代码语言:javascript
运行
复制
...
$("#myDivId").dialog({
    resizable: true,
    modal: true,
    dialogClass: "cssClass",
    close: function() {
            $("#focusFieldId").focus();              
    }   
  });
... 

请参阅:https://jquery-ui.googlecode.com/svn/tags/1.8.24/docs/dialog.html#event-close

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5070688

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档