Ver Mensaje Individual
  #8 (permalink)  
Antiguo 21/05/2009, 15:12
Avatar de zerokilled
zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años, 9 meses
Puntos: 1485
Respuesta: Varios select en mi pagina, evitar carga

mi sugerencia es la siguiente. en php genera los options para un solo HTMLSelect, de modo que el resultado final sean los 113 options. esto lo haras una sola vez y puedes olvidarte de la funcion que crea los options en javascript. luego, cuando el usuario pida otro HTMLSelect lo clonas con javascript como te habia mostrado antes. en la clonacion se duplica una copia exacta del HTMLSelect incluyendo los options. y finalmente lo agregas al form con appendChild.

mi opinion, tu codigo actual no es el mejor. como ya venia diciendo, tu codigo agrega los options al HTMLSelect. inclusive, cuando el usuario mueve el foco y luego vuelve al mismo HTMLSelect, la funcion vuelve y reescribe los options innecesariamente. de ahi que pues pienso que no seria lo mejor.

un ejemplo para demostrate como funcionaria mi sugerencia:
Código:
<script>
function clone(select){
var clone = select.cloneNode(true);
select.parentNode.appendChild(clone);
}
</script>
<form ... >
...
<div><select name='e[]'>
<!-- agrega los 113 options con PHP -->
<option value='valor1' />
<option value='valor2' />
<option value='valor3' />
<!-- el resto de los options -->
</select></div>
<input type='button' value='crear select' onclick="clone(this.form['e[]']);" />
</form>