Foros del Web » Programando para Internet » Javascript »

Tomar el Value de un Select tipo LIST

Estas en el tema de Tomar el Value de un Select tipo LIST en el foro de Javascript en Foros del Web. Hola, vengo ya hace un buen rato buscando como hacer esto y he probado de varias maneras y de ninguna me funciona... Lo que quiero ...
  #1 (permalink)  
Antiguo 21/02/2011, 14:27
 
Fecha de Ingreso: febrero-2011
Mensajes: 13
Antigüedad: 13 años, 1 mes
Puntos: 0
Tomar el Value de un Select tipo LIST

Hola, vengo ya hace un buen rato buscando como hacer esto y he probado de varias maneras y de ninguna me funciona... Lo que quiero hacer es que al hacer click en un div, llame a una funcion (Reload) y que lleve a una pagina mandando valores por metodo get.

Esta es mi funcion Reload

Código Javascript:
Ver original
  1. function Reload(){
  2.         var Produc = document.getElementById('Prod');
  3.         var Cate = document.getElementById('Cat');
  4.        
  5.         if (Produc.options[Produc.selectedIndex].value == "Uno" | Produc.options[Produc.selectedIndex].value == "Dos" | Produc.options[Produc.selectedIndex].value == "Tres") {
  6.             if (Cate .options[Cate .selectedIndex].value > 0 & Cate .options[Cate .selectedIndex].value <= 5) {
  7.                 window.location = "productos.php?produc="+Produc+"&categ="+Cate;
  8.             }
  9.         }
  10.     }

Eso lo que haria seria extraer el valor verdad?, porque no me funciona :S.
Asi tengo mis 2 select

Código HTML:
Ver original
  1. <select name="Prod" size="1" class="list_current" tabindex="1" id="Prod">
  2. <select name="Cat" size="1" class="list_current" tabindex="2" id="Cat">

Y sus opciones asi (las cargo desde php)

Código PHP:
Ver original
  1. echo "<option value='Uno'>Producto 1</option>";

Muchas gracias !
  #2 (permalink)  
Antiguo 21/02/2011, 14:39
 
Fecha de Ingreso: diciembre-2010
Mensajes: 788
Antigüedad: 13 años, 4 meses
Puntos: 51
Respuesta: Tomar el Value de un Select tipo LIST

Estás haciendo una comparación rara en tus ifs:

Código Javascript:
Ver original
  1. function Reload(){
  2.         var Produc = document.getElementById('Prod');
  3.         var Cate = document.getElementById('Cat');
  4.        
  5.         if (Produc.options[Produc.selectedIndex].value == "Uno" | Produc.options[Produc.selectedIndex].value == "Dos" | Produc.options[Produc.selectedIndex].value == "Tres") {
  6.             if (Cate .options[Cate .selectedIndex].value > 0 & Cate .options[Cate .selectedIndex].value <= 5) {
  7.                 window.location = "productos.php?produc="+Produc+"&categ="+Cate;
  8.             }
  9.         }
  10.     }

En el primer if entra si es "Uno", "Dos", "Tres". Y en tu segundo if preguntás por valores numéricos 1, 2, 3 etc. Y ese debe ser tu problema. Otra cosa, si no te redirecciona, probá cambiar window.location por location.href.

PD: Edito...Además de lo que ya te señalé, estás concatenando en tu URL los objetos Procut y Cate y no sus valores ( value ).
  #3 (permalink)  
Antiguo 21/02/2011, 14:42
 
Fecha de Ingreso: marzo-2010
Ubicación: Guadalajara, Jal
Mensajes: 91
Antigüedad: 14 años, 1 mes
Puntos: 1
Respuesta: Tomar el Value de un Select tipo LIST

Te falta llamar la función desde los select

<select name="Prod" size="1" class="list_current" tabindex="1" id="Prod" onchange="Reload()">

pero si lo que quieres es llamarla desde un div (que en realidad solo lo mencionas pero no lo implementas en tu duda) sería así:

<div id="no_se" onclick="Reload()">
</div>
__________________
Si me pides ayuda ten por seguro que hare todo mi esfuerzo por ayudarte...
  #4 (permalink)  
Antiguo 21/02/2011, 15:00
 
Fecha de Ingreso: febrero-2011
Mensajes: 13
Antigüedad: 13 años, 1 mes
Puntos: 0
Respuesta: Tomar el Value de un Select tipo LIST

Gracias a los 2 ya lo solucione de la siguiente forma:

var Produc = document.getElementById('Cat').value;

Gracias de nuevo, saludos!

Etiquetas: list, select, tipo, tomar
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 15:19.