Foros del Web » Programando para Internet » Javascript »

Texto de textfield por enlace via Query

Estas en el tema de Texto de textfield por enlace via Query en el foro de Javascript en Foros del Web. Hola, lo que quiero hacer es un buscador, que tenga la opcion de hacer busquedas avanzadas, por lo que puse un texto a un lado ...
  #1 (permalink)  
Antiguo 10/01/2005, 22:47
Avatar de sjam7  
Fecha de Ingreso: diciembre-2001
Ubicación: Guadalajara, Mexico
Mensajes: 3.672
Antigüedad: 22 años, 4 meses
Puntos: 16
Texto de textfield por enlace via Query

Hola, lo que quiero hacer es un buscador, que tenga la opcion de hacer busquedas avanzadas, por lo que puse un texto a un lado de la imagen de "enviar" del formulario.

Quisiera que al darle click al enlace "Busqueda avanzada" me mande a la pagina "busca.asp?t=av" y me mande con la informacion que tenga el text field "busca", si es necesario quitar el "?t=av" no importa

espero me haya explicado bien
__________________
CreandoWebs.com
www.creandowebs.com
PLANTILLAS TEMPLATEMONSTER CON 10% DE DESCUENTO
  #2 (permalink)  
Antiguo 11/01/2005, 01:40
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola sjam7:

Al enviar el formulario con el método get, se hace automáticamente.
Para conseguir esta cadena "?t=av" solo necesitas un elemento "hidden"... :
<form action="busca.asp" method="get" enctype="text/plain" >
<input type="hidden" name="t" value="av" />
<input type="text" name="busca" value="" />
</form>

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 11/01/2005, 10:06
Avatar de sjam7  
Fecha de Ingreso: diciembre-2001
Ubicación: Guadalajara, Mexico
Mensajes: 3.672
Antigüedad: 22 años, 4 meses
Puntos: 16
creo que no me explique bien, lo que quiero es que el formulario tenga un boton de envio (en este caso una imagen) y que si se presiona sobre un link (Busqueda avanzada) se mande el contenido del textfield a una pagina diferente a la que mandaria normalmente el formulario.

Se que los datos se enviarian via url ya que no seria por medio de formulario.

Entonces lo que necesito realmente es una especia de 2 submits, uno que es una imagen y que es el Default del formulario y un texto que es un link
__________________
CreandoWebs.com
www.creandowebs.com
PLANTILLAS TEMPLATEMONSTER CON 10% DE DESCUENTO
  #4 (permalink)  
Antiguo 11/01/2005, 11:11
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola sjam7

¿Te serviría esto?
Código HTML:
<form action="normal.php">
...
<input type="button" value="Avanzadas" onclick="this.form.action='avanzada.php';this.submit()" />
</form> 
Saludos,

Última edición por JavierB; 11/01/2005 a las 11:13
  #5 (permalink)  
Antiguo 11/01/2005, 11:15
Avatar de sjam7  
Fecha de Ingreso: diciembre-2001
Ubicación: Guadalajara, Mexico
Mensajes: 3.672
Antigüedad: 22 años, 4 meses
Puntos: 16
eso es para un boton no? se puede hacer eso mismo pero para un link?
__________________
CreandoWebs.com
www.creandowebs.com
PLANTILLAS TEMPLATEMONSTER CON 10% DE DESCUENTO
  #6 (permalink)  
Antiguo 11/01/2005, 11:20
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola de nuevo.

Ya venía para acá por el tema del link. Es que con el botón te he contestado de memoria, pero con el enlace tenía que probar un poco antes. Este es el resultado:

<a href="#" onclick="this.parentNode.action='avanzada.php';thi s.parentNode.submit()" />Avanzadas</a>

El enlace tiene que estar dentro del formulario y solo dentro del formulario, quiero decir que no funcionará si está dentro de un <div>, <fieldset> o algo parecido.

Saludos,
  #7 (permalink)  
Antiguo 11/01/2005, 11:28
Avatar de sjam7  
Fecha de Ingreso: diciembre-2001
Ubicación: Guadalajara, Mexico
Mensajes: 3.672
Antigüedad: 22 años, 4 meses
Puntos: 16
y el dato me lo manda por get o post supongo? es decir, lo tomo en la siguiente pagina como si viniera de un formulario?
__________________
CreandoWebs.com
www.creandowebs.com
PLANTILLAS TEMPLATEMONSTER CON 10% DE DESCUENTO
  #8 (permalink)  
Antiguo 11/01/2005, 12:28
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
En principio el dato te lo va a mandar según el método que tengas puesto en el formulario. Si necesitas un método distinto intenta cambiarlo. Yo no lo he probado, dime que tal te ha ido para tenerlo en cuenta en el futuro.

this.parentNode.method='get';

Saludos,
  #9 (permalink)  
Antiguo 11/01/2005, 12:30
Avatar de sjam7  
Fecha de Ingreso: diciembre-2001
Ubicación: Guadalajara, Mexico
Mensajes: 3.672
Antigüedad: 22 años, 4 meses
Puntos: 16
no me funciona ni con el this.parentNode.method='get'; ni sin el
__________________
CreandoWebs.com
www.creandowebs.com
PLANTILLAS TEMPLATEMONSTER CON 10% DE DESCUENTO
  #10 (permalink)  
Antiguo 11/01/2005, 14:23
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola otra vez:

Tal vez no funcione como te dice JavierB (¡Hola !) Porque el parentNode no sea el formulario... tanto porque lo tengas dentro de un párrafo u otro contenedor o esté el enlace en cualquier otro sitio, creo que podría ser más apropiado referenciar al formulario de otra manera:

document.forms["el_formulario"].submit();

No es necesario el envío por URL, ya que si lo envías a otra ventana, no se pierden los datos y los podrías re-enviar.

En las FAQs hay una referencia para enviar formularios a popups (también podrían ser frames).

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
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 20:44.