2012-01-13 20 views
0

私はこのjqueryスクリプトを使用して自分のページでダイアログを開きます。私は8つのダイアログオプションのtotlaを持っています。ここでJqueryダイアログボックス - 他のダイアログが開いたときに閉じる

 $(".details").dialog({ 
     autoOpen:false 
     }); 

     $("a.pop").each(function(i,o){ 
     $(this).click(function(e){ 
      e.preventDefault(); 
      $(".details:eq("+i+")").dialog('open');  
     }); 
     }); 

    }); 

がHTMLである:ユーザーがダイアログを開いた後しかし

<a class="pop" href="#"><img src="icon.png" width="16" height="16" border="0" /></a><div class="details" title="Name Help">Name</div> 
<a class="pop" href="#"><img src="icon.png" width="16" height="16" border="0" /></a><div class="details" title="Address Help">Address</div> 

、その後、すべてのダイアログが画面にとどまるだろう、次のダイアログを開こうとします。ユーザーがダイアログを開くと、ダイアログを閉じたり、新しいダイアログを選択したりするまで開いたままにしておく必要があります。 は私が

$(".selector").dialog({ 
close: function(event, ui) { ... } 
}); 

jquery情報ページから)これを実装しようとしたが、これは、ダイアログを閉じていません。適切な方向を指すように助けてくれてありがとう!

答えて

2

クリックイベントコードに$(".ui-dialog-content").dialog("close");を追加します。すべてのjQueryUIダイアログはui-dialog-contentクラスを共有するので、新しいものが開く前にすべて閉じることができます。

これを参照してくださいjsFiddle

+0

ありがとうございます! –

関連する問題