Foros del Web » Programando para Internet » Javascript »

obtener los datos de un combobox con "multiple" activado

Estas en el tema de obtener los datos de un combobox con "multiple" activado en el foro de Javascript en Foros del Web. tengo el siguiente combobox y como podrán ver permite la multiple selección, como hago para tomar todos los datos seleccionados? Código: <select name="autores" size="10" multiple="multiple" ...
  #1 (permalink)  
Antiguo 26/09/2006, 09:13
Avatar de deet  
Fecha de Ingreso: mayo-2005
Ubicación: Córdoba - Argentina
Mensajes: 269
Antigüedad: 19 años
Puntos: 1
obtener los datos de un combobox con "multiple" activado

tengo el siguiente combobox y como podrán ver permite la multiple selección, como hago para tomar todos los datos seleccionados?

Código:
<select name="autores" size="10" multiple="multiple" id="autores">
<option value="0">Seleccione Autor...</option>
<option value="ninguno">Ninguno en concreto</option>
<option value="AU002">Alamán, Marta</option>
<option value="AU003">Albi, Rosa</option>
<option value="AU004">Alcántara, Calos</option>
<option value="AU005">Alcorta Ortiz de Zárate, Elena</option>
<option value="AU006">Alfaro, Tomás</option>
<option value="AU349">Almendros, Alfonso</option>
<option value="AU007">Alonso Álvarez, Luis</option>
<option value="AU008">Alonso i López, Jesús Eduard</option>
<option value="AU350">Alonso Nuez, María Jesús</option>
<option value="AU009">Alonso Olea, Eduardo J.</option>
<option value="AU010">Alonso Prieto, Mariano</option>
<option value="AU011">Alvarado, Mari Cruz</option>
<option value="AU012">Álvarez Carmona, Isabel</option>
<option value="AU013">Álvarez de Mon, Santiago</option>
<option value="AU014">Álvarez del Manzano, José María</option>
</select>
también me interesaría saber como hago para tomar los datos cuando tengo lo siguiente:
Código:
<form id="form1" name="form1" method="post">
<input type="text" name="autores[]" size="10" multiple="multiple" id="autores[]" />
<input type="text" name="autores[]" size="10" multiple="multiple" id="autores[]" />
<input type="text" name="autores[]" size="10" multiple="multiple" id="autores[]" />
<input type="text" name="autores[]" size="10" multiple="multiple" id="autores[]" />
</form>
he probado con document.form1.autores[0].value y nada.

Última edición por deet; 26/09/2006 a las 09:33 Razón: extender la pregunta
  #2 (permalink)  
Antiguo 26/09/2006, 09:41
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola deet

Respuesta 1:
Código PHP:
  frm document.forms[0]['autores'];
  for(
i=0opt=frm.options[i];i++)
    if(
opt.selected)
      
alert(opt.value); 
Respuesta 2:
Código PHP:
  frm document.forms[0]['autores[]'];
  for (
i=0ele=frm[i]; i++)
    
alert(ele.value); 
Respuesta 3: aunque no lo has preguntado, te lo comento. El id debe ser único, no puedes poner el mismo a más de un elemento.

Saludos,
  #3 (permalink)  
Antiguo 26/09/2006, 10:15
Avatar de deet  
Fecha de Ingreso: mayo-2005
Ubicación: Córdoba - Argentina
Mensajes: 269
Antigüedad: 19 años
Puntos: 1
De acuerdo

Cita:
Iniciado por JavierB Ver Mensaje
Hola deet

Respuesta 1:
Código PHP:
  frm document.forms[0]['autores'];
  for(
i=0opt=frm.options[i];i++)
    if(
opt.selected)
      
alert(opt.value); 
Respuesta 2:
Código PHP:
  frm document.forms[0]['autores[]'];
  for (
i=0ele=frm[i]; i++)
    
alert(ele.value); 
Respuesta 3: aunque no lo has preguntado, te lo comento. El id debe ser único, no puedes poner el mismo a más de un elemento.

Saludos,

JavierB me has salvado la vida , el script funciona a la perfección, solamente tuve que copiar, pegar y listo.
  #4 (permalink)  
Antiguo 17/10/2006, 08:18
 
Fecha de Ingreso: junio-2005
Mensajes: 26
Antigüedad: 18 años, 10 meses
Puntos: 0
gracias por el Codigo
yo tenía un problema más complejo pero con checkboxes
y por este ejemplo pude sacar lo que necesitaba

Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:08.