il problema: la funzione innerHTML NON riesce a modificare i valori "option" di un campo select.
browser afflitti dal problema: internet explorer.
soluzione ufficiale: andare a modificare il DOM del documento e aggiungere tanti nodi quanti option vogliamo aggiungere
soluzione semplice: inserire il select in un elemento (span o label) e modificare l'innerHTML dell'elemento contenitore
codice che NON funziona
codice:
<select id="select1" >
<option value="1" >1</option>
<option value="2" >2</option>
<option value="3" >3</option>
<option value="4" >4</option>
</select>
<script type="text/javascript" >
document.getElementById('select1').innerHTML='<option value="5" >5<\/option><option value="6" >6<\/option>';
</script>
codice che aggira il problema
codice:
<label for="select1" id="label_select1" ><select id="select1" >
<option value="1" >1</option>
<option value="2" >2</option>
<option value="3" >3</option>
<option value="4" >4</option>
</select></label>
<script type="text/javascript" >
document.getElementById('label_select1').innerHTML='<select id="select1" ><option value="5" >5<\/option><option value="6" >6<\/option><\/select>';
</script>
il "label" è obbligatorio per alcuni livelli di accessibilità del documento, e per le nostre necessità si rivela parecchio utile.
come soluzione questa che ho postato è semplice da adottare, l'alternativa sarebbe questa