2011-07-12 5 views
0

私はこの質問に対する答えを見つけましたが、ここでは問題が異なるようです。私はそれが閉じられた後に再び開くことができません。jQuery UIダイアログが一度だけ開きます

編集:OK、私の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> 
+0

あなたは何をすると思いますか?二度開きますか? – pimvdb

+1

私はそれを閉じた後、私は再びそれを開くことができるようにしたいと思います。 – Vonder

+0

には何かjavascriptエラーがありますか? –

答えて

1

ダイアログ近い上のメソッド呼び出しを破棄追加してください:更新:それは

編集を作品として

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

私のために働いてくれてありがとう:) – Raheel

+0

その作品... gr8 – Priyansh

1

このjsFiddleを見てくださいリンクされていないのでリンクしてください

0

私はあなたが私はそれを覚えることができるよう、私は限り、それをテストしたがいない

$('#dialog').dialog('option', 'buttons',{ 
    "Cancel":function(){ 
    // notice the hide here 
    $('#dialog').dialog('hide'); 
    } 
}); 

hide代わりのcloseを使うべきだと思います。 これが役に立ちますようにお願いします。

関連する問題