quante volte avete dovuto presentare una maschera di dati con all’interno una o più select? Tante. E qual è la rottura di scatole più grande? Mettere il “selected” all’opzione della select attualmente attiva.
Vi costringe a scrivere un ciclo “for” con all’interno un if per verificare se l’option corrente che si sta stampando è quella selezionata. Per i pigri c’è un trucco con javascript.
Nel momento in cui si crea la select, sotto ci si mette del codice javascript che la allinea. Supponiamo che nella variabile PHP “$current_value” ci sia il valore della opzione che deve essere seleziona. quel valore magari proviene dal database o che se so io da dove. Scriveremo così:
<select name=”nome_select”>
<option value=”valore1″>Io sono il primo</option>
<option value=”valore2″>Io sono il secondo</option>
<option value=”valore3″>Io sono il terzo</option>
</select>
<script type=”text/javascript”>
document.forms[0]["nome_select"].value = “<?=$current_value?>”;
</script>
Ovviamente il codice è facilmente adattabile a JSP o altri linguaggi. Se nella pagina ci sono più form, è il caso di dare loro un nome e cambiare il “forms[0]” con “forms["nome_form"]“.
So già che qualcuno può suggerire l’utilizzo del vettore “elements” del form, che è più corretto: fatelo pure.




