Foros del Web » Programando para Internet » Javascript »

Activar evento Click en un ComboBox y hacer que vuelva a cargar la página

Estas en el tema de Activar evento Click en un ComboBox y hacer que vuelva a cargar la página en el foro de Javascript en Foros del Web. Tengo un Combo Box de este tipo: Código PHP: < select name = "cobCodigo" >     < option value = '1234-1234-1234' > 1234 - 1234 - 1234 </ ...
  #1 (permalink)  
Antiguo 07/07/2004, 21:35
Avatar de RsOfT  
Fecha de Ingreso: marzo-2002
Ubicación: InterNET
Mensajes: 1.121
Antigüedad: 22 años, 1 mes
Puntos: 7
Activar evento Click en un ComboBox y hacer que vuelva a cargar la página

Tengo un Combo Box de este tipo:
Código PHP:
<select name="cobCodigo">
    <
option value='1234-1234-1234'>1234-1234-1234</option>
    <
option value='1784-1344-1298'>1784-1344-1298</option>
    <
option value='3215-1293-2938'>3215-1293-2938</option>
</
select
Como yo puedo, que al selecionar uno valor del Combo me cargue otra vez la misma página enviando en la URL ese código que seleccioné, me explico:
si despliego la lista y seleciono el Código "1234-1234-1234", me direccione mi página asi:
La_Misma_Pagina.php?Codigo=1234-1234-1234

__________________
.::RsOfT::.
--El que se aferra a lo conocido, nunca conocerá lo desconocido--
--Es intentando lo imposible como se realiza lo posible--
--Es de pésimo gusto contentarse con algo mediocre cuando lo excelente está a nuestro alcance--
  #2 (permalink)  
Antiguo 08/07/2004, 00:17
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 4 meses
Puntos: 61
Cita:
Iniciado por RsOfT
Tengo un Combo Box de este tipo:
Código PHP:
<select name="cobCodigo">
    <
option value='1234-1234-1234'>1234-1234-1234</option>
    <
option value='1784-1344-1298'>1784-1344-1298</option>
    <
option value='3215-1293-2938'>3215-1293-2938</option>
</
select
La_Misma_Pagina.php?Codigo=1234-1234-1234

Prueba esto:

Código PHP:
<select 
onchange
="location.href=location.href.split('?')[0]+'?codigo='+this.value;"
name="cobCodigo">
    <
option value='1234-1234-1234'>1234-1234-1234</option>
    <
option value='1784-1344-1298'>1784-1344-1298</option>
    <
option value='3215-1293-2938'>3215-1293-2938</option>
</
select
claro que siempre puedes cambiar
onchange="location.href=location.href.split('?')[0]+'?codigo='+this.value;"

por:

onchange="location.href='<? $_PHP_SELF; ?>?codigo='+this.value;"

Lo de PHPSELF no sé muy bien si se escribe así, pero si manejas PHP sabrás a lo que me refiero.

Un saludo!
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
  #3 (permalink)  
Antiguo 08/07/2004, 11:19
Avatar de RsOfT  
Fecha de Ingreso: marzo-2002
Ubicación: InterNET
Mensajes: 1.121
Antigüedad: 22 años, 1 mes
Puntos: 7
Manejo php, pero aún soy novato.
Me funciona a la perfeccion, pero no entiendo el uso del split('?')[0] ni del $_PHP_SELF.
He usado split en otras ocasiones y entiendo que lo que hace es dividir una cadenas en subcadenas por medio de un delimitador, pero para este caso, cual es su funcion?

Gracias por tu ayuda
__________________
.::RsOfT::.
--El que se aferra a lo conocido, nunca conocerá lo desconocido--
--Es intentando lo imposible como se realiza lo posible--
--Es de pésimo gusto contentarse con algo mediocre cuando lo excelente está a nuestro alcance--
  #4 (permalink)  
Antiguo 08/07/2004, 13:33
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 4 meses
Puntos: 61
Lo que hace aquí es tomar la dirección de la página y la divide por la interrogación. Para luego tomar sólo el primer elemento. Así si la dirección es esta:

http://www.forosdelweb.com/showthrea...608#post731608

pues con split lo que hace es crear un array dividiendo la cadena en subcadenas usando como corte la interrogación. Así:

pepe="http://www.forosdelweb.com/showthread.php?p=731608#post731608".split("?");

daría este resultado:

pepe[0] sería : http://www.forosdelweb.com/showthread.php
y pepe[1] sería: p=731608#post731608

Para asegurarnos que toma la dirección sin variables (que vienen siempre después de una interrogación) he puesto lo del split con el [0], de forma que tome el valor similar al de pepe[0] del ejemplo.

No sé si me he explicado...
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
  #5 (permalink)  
Antiguo 08/07/2004, 13:44
Avatar de RsOfT  
Fecha de Ingreso: marzo-2002
Ubicación: InterNET
Mensajes: 1.121
Antigüedad: 22 años, 1 mes
Puntos: 7
Perfectamente...
Muchas gracias!!!
__________________
.::RsOfT::.
--El que se aferra a lo conocido, nunca conocerá lo desconocido--
--Es intentando lo imposible como se realiza lo posible--
--Es de pésimo gusto contentarse con algo mediocre cuando lo excelente está a nuestro alcance--
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 00:24.