Originariamente inviata da
KillerWorm
Duplicare l'intero script (cioè il codice JavaScript/jQuery) che definisce il widget è inutile e ridondante, e potrebbe giusto creare dei problemi. Dovrai chiaramente scrivere il codice HTML necessario per creare la seconda combobox, eventualmente applicando una
class piuttosto che un
id; a quel punto puoi semplicemente inizializzare entrambe le combobox usando tale classe.
Nell'esempio viene usato un
id; cioè nel codice HTML si ha:
codice:
<select id="combobox">
.
e nello script tale elemento viene inizializzato con:
codice:
$( "#combobox" ).combobox();
.
Tu puoi usare una classe se ti serve inizializzare facilmente più combobox. Quindi nel codice HTML avrai:
codice:
Combobox 1
<select class="combobox">
[...]
Combobox 2
<select class="combobox">
[...]
Combobox N
<select class="combobox">
e nello script puoi inizializzarle così:
codice:
$( ".combobox" ).combobox();
Nota l'uso del punto (che identifica appunto tutti gli elementi con tale classe) anziché il cancelletto (che identifica l'elemento con quell'
id).
Se vuoi comunque usare degli
id (per differenziare ad esempio i singoli elementi) puoi costruire il selettore jQuery in modo da comprendere tutti i vari
id interessati, relativi agli elementi da inizializzare.
Puoi avere quindi una situazione del genere:
- HTML
codice:
Combobox 1
<select id="combobox_1">
[...]
Combobox 2
<select id="combobox_2">
[...]
Combobox N
<select id="combobox_N">
.
- jQuery:
codice:
$( "#combobox_1,#combobox_2,#combobox_N" ).combobox();
.
O, ancora, inizializzare singolarmente i vari combobox:
codice:
$( "#combobox_1").combobox();
$( "#combobox_2").combobox();
$( "#combobox_N").combobox();