Javascript jQuery UI对话框只打开一次

Javascript jQuery UI对话框只打开一次,javascript,jquery,jquery-ui-dialog,Javascript,Jquery,Jquery Ui Dialog,我找到了这个问题的答案,但这里的问题似乎不同。我不能在它关闭后再打开它 编辑:好的,我的Jquery代码在别处似乎有错误 $(function() { $( "#dialog" ).dialog({ autoOpen: false, show: "blind", hide: "explode" }); $('#opener').click(openDialog); }) var openDialog = function(

我找到了这个问题的答案,但这里的问题似乎不同。我不能在它关闭后再打开它

编辑:好的,我的Jquery代码在别处似乎有错误

 $(function() {
    $( "#dialog" ).dialog({
        autoOpen: false,
        show: "blind",
        hide: "explode"
    });
  $('#opener').click(openDialog);

})

var openDialog = function(){


   $('#dialog').dialog('option', 'buttons',{
      "Cancel":function(){
         $('#dialog').dialog('close');
      }
  });


 $('#dialog').dialog('open');

};
和HTML:

<div id="dialog" title="Basic dialog">
    <p>This is an animated dialog which is useful for displaying information. The     dialog window can be moved, resized and closed with the 'x' icon.</p>
</div>

<button id="opener">Open Dialog</button>

这是一个动画对话框,用于显示信息。可以使用“x”图标移动、调整和关闭对话框窗口

打开对话框
在关闭对话框时尝试添加销毁方法调用:

var openDialog = function(){
   $('#dialog').dialog('option',
    close: function () { $(this).dialog("destroy"); },
    'buttons',{
      "Cancel":function(){
         $('#dialog').dialog('close');
      }
  });

尝试在对话框关闭时添加销毁方法调用:

var openDialog = function(){
   $('#dialog').dialog('option',
    close: function () { $(this).dialog("destroy"); },
    'buttons',{
      "Cancel":function(){
         $('#dialog').dialog('close');
      }
  });
看看这个,因为它的工作

编辑:更新链接,因为它不是一个

看看它的工作原理


编辑:更新了链接,因为它不是对我有用的链接:

它对我有用:

我认为你应该在

$('#dialog').dialog('option', 'buttons',{
  "Cancel":function(){
     // notice the hide here
     $('#dialog').dialog('hide');
  }
});
我还没有测试过,但据我记忆所及。
希望这对您有所帮助

我认为您应该使用
隐藏
,而不是在中使用
关闭

$('#dialog').dialog('option', 'buttons',{
  "Cancel":function(){
     // notice the hide here
     $('#dialog').dialog('hide');
  }
});
我还没有测试过,但据我记忆所及。
希望这有帮助

您希望它能做什么?打开两次?不,在我关闭它之后,我希望能够再次打开它。是否有任何javascript错误?我已经尝试了相同的代码,对我来说工作正常。您希望它做什么?打开两次?不,在我关闭它之后,我希望能够再次打开它。是否有任何javascript错误?我已经尝试了相同的代码,对我来说工作正常