2012-01-13 76 views
0

我使用这个jQuery脚本来打开我的页面上的对话框关闭。我有一个总计8个对话框选项。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> 

,然后尝试打开一个对话框,所有的对话框会留在屏幕上。当用户打开一个对话框时,它应该保持打开状态,直到他们关闭对话框或者他们选择一个新的对话框。 我试图实现这个(从jquery信息页)

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

但这并不关闭对话框。感谢任何帮助指出正确的方向!

回答

2

添加$(".ui-dialog-content").dialog("close");到您的点击事件代码。由于所有jQueryUI对话框共享ui-dialog-content类,因此可以先关闭它们,然后再打开任何新对话框。

看到这个jsFiddle

+0

非常感谢! – 2012-01-13 18:20:49