開かれたdialog
のボックスをすべて閉じるには、jQuery
? 状況は次のとおりです:ダイアログなしの単純なページがあります。ダイアログにはいくつかのボタンがあります。開いているダイアログボックスをすべて閉じますか? (JQuery)
ボタンをクリックすると、開いているダイアログをすべて閉じる必要があります。 jQueryの
<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>
そしてここにある:ここで
はHTMLです$(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')
をチェックしようとしましたが、同じ結果です。
どのようにすべてのダイアログを閉じることができますか?それによってその選択し、それらはすべて.ui-dialog-content
クラスを持っているとして、あなたは簡単なこれを試すことができます
$(".ui-dialog-content").dialog("close");
は、あなたが最初にあなたのダイアログを初期化する必要があります準備(機能(){。$( 'ダイアログボック')ダイアログ({})} ) –