dialog
開いているすべてのボックスを閉じるにはどうすればよいjQuery
ですか?次の状況です。ダイアログのない単純なページがあります。ダイアログを所有するために開くボタンがいくつかあります。
ボタンをクリックすると、開いているすべてのダイアログを閉じる必要があります。
HTMLは次のとおりです。
<div id="buttons">
<a href="#" id="btn_1">Button 1</a>
<a href="#" id="btn_2">Button 2</a>
<a href="#" id="btn_3">Button 3</a>
</div>
<div id="dialog_1" class="dialogbox">...</div>
<div id="dialog_2" class="dialogbox">...</div>
<div id="dialog_3" class="dialogbox">...</div>
そしてここにjQueryがあります:
$(function() {
$('#buttons').find('a').click(function() {
// close all dialogs
$('.dialogbox').dialog("close");
// find out clicked id and open dialog
var nr = this.id.split("_")[1];
$('#dialog_'+nr).dialog();
});
});
Chromeは言う:Uncaught Error: cannot call methods on dialog prior initialization; attempted to call method 'close'
。
確認してみました$('.dialogbox').dialog('isOpen')
が、同じ結果になりました。
すべてのダイアログを閉じるにはどうすればよいですか?