jQuery对话框,在关闭对话框中隐藏元素

时间:2012-07-19 17:36:59

标签: javascript jquery dialog

我正在使用jQuery UI Dialog函数,并且在关闭时,我想隐藏我对话框中的一个元素。

我试图在Dialog函数的关闭事件中执行此操作,但它不起作用。我猜是因为在关闭时该元素不再存在。

这是代码。

// Dialog settings for our edit dialog's
$("#myDialog").dialog({
    autoOpen: false,
    close: function(event, ui){
         $("#myDiv").hide();
    }   
});


<div id="myDialog">
   <div id="myDiv">This div should hide when the user closes the dialog, but it stays open when I re-open the dialog.</div>
</div>  

2 个答案:

答案 0 :(得分:0)

myDialog及其中的所有内容(包括myDiv)应在对话框关闭时自动隐藏。您无需编写任何其他代码即可实现此目的。如果不起作用,那么别的东西就错了。我的猜测基于你问题中的代码示例:

  1. 默认隐藏myDialog,例如<div id="MyDialog" style="display:none;">...
  2. 在适当的时候明确打开对话框,例如$("#myDialog").dialog("open");

答案 1 :(得分:0)

您可能只需要引用相对于对话框的那些元素。

  $("#myDialog").dialog().find('#myDiv').hide()

-edit -

    close: function(event, ui){
     $(this).find('#myDiv').hide()
    }