Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/01/2009, 07:23
shandercage
 
Fecha de Ingreso: enero-2009
Mensajes: 10
Antigüedad: 16 años, 2 meses
Puntos: 1
select dinámico [onchange] y [addSelect]

Hola a todo el mundo, me encantaría que alguien supiera solucionar este problema.
Código:
<form name="formulario">
<select name="firstSelect" onchange="onChangeUpdateSecondSelect(this);" >
     <option value="1">Enlace</option>
     <option value="2">Banner / rectángulo</option>
     <option value="3">Megabanner / Superbanner / Banner gigante</option>
     <option value="4">Megabanner desplegable</option>
</select>
<select name="SecondSelect"></select>
</form>
<script language="javascript">
function onChangeUpdateSecondSelect(oSelect) {

selectedIndex = document.formulario.oSelect.selectedIndex; // <-- esto me da el siguiente error:
                                                                                                //Form.oSelect is undefined
} //closing onChangeUpdateSecondSelect()
</script>
Se que se puede acceder al campo <select> de esta forma:
document.formulario.firstSelect.

Pero esa no es mi intencion.
Mi intencion es pasarle el this, onChangeUpdateSecondSelect(this). Ese this es la referencia a un objeto [HTMLselectElement] y que a partir de recibir ese <select> mostrar los <option> del <select name="secondSelect">.


Y otra pregunta es:
Sé que se puede acceder al DOM de un HTML a través de javascript, es decir, podemos acceder a un <SELECT> determinado de esta forma:

Código:
doucument.NAMEformulario.NAMEselect.
Pero se puede acceder al DOM que ha sido creado dinamicamente a través de javascritp?


Código:
 
<script language="javascript">
      var columna1 = row.insertCell(0);
      var _select = document.createElement('select');
      _select.name = 'firstSelect2'
      _select.setAttribute('onchange', 'onChangeUpdateSecondSelect("+_select2+")');
      select.options[0] = new Option('100x100');
      select.options[1] = new Option('200x200');
      select.options[2] = new Option('300x300');
      columna1.appendChild(_select);
</script>
Esta columna que lleva dentro un <select> que acabo de crear con el código de arriba esta dentro del <form name="formulario">. Pero no consigo acceder a ese select de la siguiente forma:

Código:
alert(document.formulario.firstSelect2) // <-- eso me da undefined.
A ver si alguien me puede responder, muchas gracias por leerme.
_saludos!