Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] Cambiar destino form segun option seleccionado

Estas en el tema de Cambiar destino form segun option seleccionado en el foro de Javascript en Foros del Web. Buenas tardes, Tengo una duda, quisiera saber cual es la manera mas sencilla para que, de acuerdo a un option seleccionado, me diriga un formulario ...
  #1 (permalink)  
Antiguo 23/05/2017, 16:21
 
Fecha de Ingreso: diciembre-2004
Mensajes: 167
Antigüedad: 19 años, 10 meses
Puntos: 0
Cambiar destino form segun option seleccionado

Buenas tardes,

Tengo una duda, quisiera saber cual es la manera mas sencilla para que, de acuerdo a un option seleccionado, me diriga un formulario a una URL distinta.

Ejemplo:

Código PHP:
<form>
 <
select>
                <
option value="1">Hola</option>
                <
option value="2">Chau</option>
</
select>
<
a href="">Ir</a>
</
form
Y que si un usuario selecciona la opcion Hola, vaya a una URL, y cuando selecciona la opcion Chau, vaya a otra.

Gracias!
  #2 (permalink)  
Antiguo 23/05/2017, 16:36
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Cambiar destino form segun option seleccionado

Algo rápido podría ser esto:

Código HTML:
Ver original
  1. <form id="form" method="post" action="1">
  2.     <select onchange="document.getElementById('form').setAttribute('action', this.value)">
  3.         <option value="1">Hola</option>
  4.         <option value="2">Chau</option>
  5. <input type="submit" value="go!" />
  6. </form>
  #3 (permalink)  
Antiguo 23/05/2017, 16:38
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años
Puntos: 977
Respuesta: Cambiar destino form segun option seleccionado

En principio, no deberías usar un enlace ya que su uso es para redirigir al usuario hacia la dirección electrónica establecida en su atributo href, sin la necesidad de pertenecer a un formulario. En su lugar deberías utilizar un <input type="submit" /> o un <button>.

Por otro lado, el cambio básicamente se realizaría al momento de que se produzca el evento change en el <select>, por lo cual solo tendrías que asociar dicho evento al elemento en cuestión y ejecutar una función por cada vez que ocurra el cambio. Cuando se pulse el botón del formulario para realizar el envío de información (evento submit), debes cancelar la ejecución de dicho evento (método .preventDefault()) y, utilizando una condición, realizar la redirección hacia una determinada dirección electrónica según sea la opción elegida. Otra forma de hacerlo consistiría en cambiar el valor del atributo action del formulario por cada vez que se elija una opción, cambio que puedes realizar en la función que asocies al evento change del <select>.

__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand

Etiquetas: destino, form, option, seleccionado, url
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:48.