Foros del Web » Programando para Internet » Javascript »

como saber el texto de la opción elegida en un select...?

Estas en el tema de como saber el texto de la opción elegida en un select...? en el foro de Javascript en Foros del Web. Hola, estoy intentando hacer lo que pone en el título del mensaje... he buscado por ahí y he encontrado que se podría hacer así: Código: ...
  #1 (permalink)  
Antiguo 29/11/2004, 07:42
 
Fecha de Ingreso: octubre-2004
Ubicación: Cork (Irlanda)
Mensajes: 161
Antigüedad: 19 años, 6 meses
Puntos: 1
como saber el texto de la opción elegida en un select...?

Hola, estoy intentando hacer lo que pone en el título del mensaje... he buscado por ahí y he encontrado que se podría hacer así:


Código:
var indice = document.formul.miSelect.selectedIndex;
var textoEscogido = document.formul.miSelect.options[indice].text;
pero a mi no me funciona... de todas formas quiero hacerlo con arrays asociativos de esos pero tampoco me funciona:


Código:
var indice = document.forms[0]["miSelect"]["selectedIndex"];
var textoEscogido = document.forms[0]["miSelect"]["options"][indice]["text"];
la primera linea si funciona pero la segunda no... y la he probado con y sin comillas y con mil variantes más pero nada de nada...

A ver si alguien puede darme alguna pista
  #2 (permalink)  
Antiguo 29/11/2004, 08:01
Avatar de baklao  
Fecha de Ingreso: noviembre-2004
Ubicación: Santa Ana - Isla de Margarita
Mensajes: 482
Antigüedad: 19 años, 5 meses
Puntos: 0
Hola como lo tienes esta bien de repente no esta tomando los valores que le estas pasando una manera de depurarlo y sabe que esta pasando has lo siguiente

Código:
<script>

var indice = document.formul.miSelect.selectedIndex;
alert(indice);
var textoEscogido = document.formul.miSelect.options[indice].text;
alert(textoEscogido);

</script>
espero haberte ayudado

Atte. Mohamed
desde Venezuela - Isla de Margarita
  #3 (permalink)  
Antiguo 29/11/2004, 09:51
 
Fecha de Ingreso: octubre-2004
Ubicación: Cork (Irlanda)
Mensajes: 161
Antigüedad: 19 años, 6 meses
Puntos: 1
Pues no me ha ayudado porque ya había hecho eso...

Haciendo lo siguiente...


Código:
var indice = document.forms[0]["miSelect"]["selectedIndex"];
var textoEscogido = document.forms[0]["miSelect"]["options"][indice]["text"];
...el error que me da es: Object doesn't support this property or method.

  #4 (permalink)  
Antiguo 29/11/2004, 10:15
Avatar de baklao  
Fecha de Ingreso: noviembre-2004
Ubicación: Santa Ana - Isla de Margarita
Mensajes: 482
Antigüedad: 19 años, 5 meses
Puntos: 0
Hola mandame si puedes el codigo de javascript y de donde le haces el llamado y asi podre ayudarte mejor.

Atte. Mohamed
Desde Venezuela - Isla de margarita
  #5 (permalink)  
Antiguo 29/11/2004, 12:37
 
Fecha de Ingreso: octubre-2004
Ubicación: España
Mensajes: 894
Antigüedad: 19 años, 6 meses
Puntos: 3
Hola, masterjail
He probado tu código y ambas versiones me funcionan bien. El error debe estar en otra parte del código (¿el formulario?). Revísalo o ponlo aquí completo.

Éste es el mío:
Código HTML:
<html>
<head>
<script language="javascript" type="text/javascript">
function leeSelect1() {
var indice = document.formul.miSelect.selectedIndex;
var textoEscogido = document.formul.miSelect.options[indice].text;
alert(textoEscogido)
}
function leeSelect2() {
var indice = document.forms[0]["miSelect"]["selectedIndex"];
var textoEscogido = document.forms[0]["miSelect"]["options"][indice]["text"];
alert(textoEscogido)
}
</script>
</head>

<body>
<form name="formul">
<select name="miSelect">
<option id="1" value="a1">Opción 1</option>
<option id="2" value="a2">Opción 2</option>
<option id="3" value="a3">Opción 3</option>
</select>
<br>
 <input type="button" value="Leer método 1" onClick="leeSelect1()">
 <input type="button" value="Leer método 2" onClick="leeSelect()">
</form>


</body>
</html> 
__________________
Angel :cool:
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 02:07.