Foros del Web » Programando para Internet » Javascript »

Select Menu/List Javascript IE

Estas en el tema de Select Menu/List Javascript IE en el foro de Javascript en Foros del Web. Hola a todos, Pues vengo para preguntar algo que me viene atormentando los últimos días... diría incluso semanas. Pues bien, tengo un select menu/list con ...
  #1 (permalink)  
Antiguo 02/07/2012, 04:12
 
Fecha de Ingreso: enero-2012
Mensajes: 16
Antigüedad: 12 años, 2 meses
Puntos: 0
Select Menu/List Javascript IE

Hola a todos,

Pues vengo para preguntar algo que me viene atormentando los últimos días... diría incluso semanas.

Pues bien, tengo un select menu/list con una serie de opciones (como este):

Código HTML:
<select name="Menu_Periodo_Tiempo" id="Menu_Periodo_Tiempo">
		      <option selected="selected"> Seleccione ventana temporal </option>
		      <option value="1 día">1 d&iacute;a</option>
		      <option value="7 días">7 d&iacute;as</option>
		      <option value="14 días">14 d&iacute;as</option>
		      <option value="28 días">28 d&iacute;as</option>
	  </select> 
El objetivo es que cuando lance el formulario, antes recoja el valor del Select y SÓLO en caso de haber cambiado (haber escogido una opción) lo lance.

Pues bien, antes de lanzar el formulario hago la siguiente sentencia javascript:

Código:
var Select_Tiempo = document.forms.form1.Menu_Periodo_Tiempo.options[document.forms.form1.Menu_Periodo_Tiempo.selectedIndex].text;
He probado también:

Código:
var x=document.getElementById("Menu_Periodo_Tiempo").selectedIndex;
var y=document.getElementById("Menu_Periodo_Tiempo").options;
var Select_Tiempo= y[x].text;
PERO NO HAY MANERA DE QUE FUNCIONE EN INTERNET EXPLORER¡¡¡ Firefox, Chrome, Opera... pero Internet Explorer no funciona de ninguna manera. Es como si no aceptase coger el valor del Select. El último error que me aparece es:
"El objeto no acepta este valor o método" pero vamos, me ha dado errores diversos.

Se me ha ocurrido crear una variable en javascript que se modifique en el evento onchange del Select, pero tiene sus riesgos (y me fastidia que no haya algo más directo).

Algún experto sabría decirme si existe solución?

Gracias a todos de antemano...
  #2 (permalink)  
Antiguo 02/07/2012, 05:04
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 9 meses
Puntos: 1567
Respuesta: Select Menu/List Javascript IE

Me parece que te estás complicando las cosas

Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <title>titulo</title>
  5. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  6. <script type="text/javascript">
  7. //<![CDATA[
  8. function validar(){
  9. var elnombre = document.getElementById('nombre');
  10. if(elnombre.value == ""){
  11. alert('seleccione una opción');
  12. return false;
  13. }
  14. }
  15. //]]>
  16. </head>
  17. <form action="#" method="get" onsubmit="return validar()">
  18. <p>
  19. <select name="nombre" id="nombre">
  20. <option value="">Seleccionar</option>
  21. <option value="a">A</option>
  22. <option value="b">B</option>
  23. <option value="c">C</option>
  24. <input type="submit" />
  25. </p>
  26. </form>
  27. </body>
  28. </html>

Si bien no usé onchange, me gustar´´ia saber de donde has sacado eso de que onchange implica riesgos
SAludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #3 (permalink)  
Antiguo 03/07/2012, 02:00
 
Fecha de Ingreso: enero-2012
Mensajes: 16
Antigüedad: 12 años, 2 meses
Puntos: 0
Respuesta: Select Menu/List Javascript IE

Hola Emprear,

Lo siento por la respuesta tardía y muchas gracias por responder.

Lo de onchage y el riesgo es respecto a mi código, posiblemente me expresase mal. Se me ocurrió alguna situación "rocambolesca" que podía resultar peligrosa. De momento no tengo nada en contra del onchange... xD.

Y respecto a la solución... bueno, tal vez si me esté complicando, pero me sigue resultando interesante sacar el ".text" del select menú en lugar del value. Además, no tengo el suficiente conocimiento para decir nada pero, utilizo un formulario tipo "post" (no sé si tiene algo que ver) y no sé si la estructura actual de mi código permite utilizar el evento onsubmit() del formulario (actualmente fuerzo el submit usando javascript). Insisto en que no lo sé, soy un semi-novato en estas lides.

EDITO: Quiero decir que por las comprobaciones y el flujo que realizo igual requiere muchos cambos emplear el onsubmit, es una página bastante grande.

Gracias por responder y no voy a desistir hasta encontrar la manera de sacar el ".text" en IE... acepto sugerencias por supuesto

Un saludo.
  #4 (permalink)  
Antiguo 03/07/2012, 07:44
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 9 meses
Puntos: 1567
Respuesta: Select Menu/List Javascript IE

Eso en si no representa mayores problemas
Código HTML:
Ver original
  1. <!DOCTYPE html>
  2. <script type="text/javascript">
  3. function mostrarText(elemento)
  4. {
  5. var elText=elemento.options[elemento.selectedIndex].text;
  6. alert("Texto del option: " + elText);
  7. }
  8. </head>
  9.  
  10. <select onchange="mostrarText(this)">
  11.   <option>A</option>
  12.   <option>B</option>
  13.   <option>C</option>
  14.   <option>D</option>
  15. </form>
  16.  
  17. </body>
  18. </html>

Funciona en todos los navegadores, IE no requiere ningún tratamiento especial

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #5 (permalink)  
Antiguo 04/07/2012, 18:39
(Desactivado)
 
Fecha de Ingreso: noviembre-2002
Ubicación: Ciudad Autónoma de Buenos Aires
Mensajes: 2.367
Antigüedad: 21 años, 4 meses
Puntos: 317
Respuesta: Select Menu/List Javascript IE

No sé si llego tarde. Como tampoco voy a aportar nada más valioso de lo que ya está, supongo que mi duda carece de importancia.

Hace poco preguntaron como obtener ..."algo" del <select>, Y yo puse esto, que no usa .text.
Lo dejo como una curiosidad.

Obtener propiedad marcada de un select y no su valor

Etiquetas: formulario, funcion, select
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 19:14.