Foros del Web » Creando para Internet » HTML »

Post Action con 2 botones a diferentes sitios

Estas en el tema de Post Action con 2 botones a diferentes sitios en el foro de HTML en Foros del Web. Hola, Tengo un formulario (con su action correspondiente) y 2 botones de comando. Uno de los botones es este: <input type="submit" name="Submit" value="Imprimir Presupuesto" onClick="location.href='imprimir_presupuesto.asp?n ...
  #1 (permalink)  
Antiguo 02/10/2006, 10:27
Avatar de Laika  
Fecha de Ingreso: octubre-2001
Mensajes: 1.376
Antigüedad: 22 años, 5 meses
Puntos: 0
Post Action con 2 botones a diferentes sitios

Hola,

Tengo un formulario (con su action correspondiente) y 2 botones de comando.

Uno de los botones es este:

<input type="submit" name="Submit" value="Imprimir Presupuesto" onClick="location.href='imprimir_presupuesto.asp?n um_presupuesto=<%=rs("num_presupuesto")%>&id_franq uiciado=<%=Request.QueryString("id_franquiciado")% >&id_cliente=<%=rs("id_cliente")%>'"/>

El otro es uno normal que no tiene nada en el onclick que me lleva a donde le he puesto en el action de formulario.

Mi problema es que el boton 1 no me respeta lo que pone en el onclick, me lleva también a lo que pone en el action del post.

¿Cómo puedo solucionar esto?
  #2 (permalink)  
Antiguo 02/10/2006, 11:52
 
Fecha de Ingreso: diciembre-2003
Mensajes: 1.583
Antigüedad: 20 años, 3 meses
Puntos: 13
Si utilizas un botón del tipo SUBMIT, los datos del formulario siempre serán enviados al destino que hayas especificado en el ACTION del formulario.

Lo que generalmente se hace en estos casos es que el script que procesará los datos (el que está especificado en el ACTION) ejecute dos acciones distintas según el botón que se haya presionado. Un ejemplo:

Tienes un botón llamado "boton1" y otro llamado "boton2" (para eso se usa el atributo NAME del INPUT) dentro de un formulario que envía los datos via POST al destino DATOS.ASP

Si ejecutas "boton1" se enviarán los campos del formulario más ese botón (pero no se enviará "boton2"). Si ejecutas "boton2" se enviarán los datos del formulario más ese botón (pero no "botón1").

Entonces en el archivo DATOS.ASP puedes detectar si se activó "botón1" o "boton2", y para cada caso ejecutar una acción diferente.

La otra opción que tienes es que "boton2" sea un INPUT del tipo BUTTON y no del tipo SUBMIT. En ese caso "boton2" no envía el formulario, simplemente ejecuta lo que le hayas ordenado en el evento onclick (siempre y cuando el usuario disponga de Javascript en su navegador)..
  #3 (permalink)  
Antiguo 11/10/2006, 08:29
 
Fecha de Ingreso: noviembre-2003
Mensajes: 267
Antigüedad: 20 años, 4 meses
Puntos: 4
Código PHP:
<form action="x.asp" name="formul"
<
input type="text" name="mi_texto"
<
br
<
br
<
input type="button" value="Enviar a pagina x.asp" onclick="envia('x.asp')"
<
br
<
input type="button" value="Enviar a pagina y.asp" onclick="envia('y.asp')"
</
form
<
script
function 
envia(pag){ 
    
document.formul.actionpag 
    document
.formul.submit() 

</script> 
espero no sea muy tarde
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 23:41.