Come posso chiudere tutte le caselle aperte dialog
in jQuery
? La situazione è la seguente: ho una pagina semplice senza finestre di dialogo. Ha alcuni pulsanti per aprire le finestre di dialogo.Chiudi tutte le finestre di dialogo aperte? (JQuery)
Quando faccio clic su un pulsante, ho bisogno di chiudere tutte le finestre di dialogo aperte.
Ecco il codice 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>
E qui è il 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();
});
});
Il Chrome dicono: Uncaught Error: cannot call methods on dialog prior initialization; attempted to call method 'close'
.
Sono stato tentato di controllare $('.dialogbox').dialog('isOpen')
, ma lo stesso risultato.
Come posso chiudere tutte le finestre di dialogo?
è necessario prima inizializzare le finestre di dialogo prima di questa funzione mai ottenere chiama $() pronto (function() {. $ ('dialogbox') finestra di dialogo ({})}) –