Foros del Web » Programando para Internet » Javascript »

Envio de Form a opcion del navegante

Estas en el tema de Envio de Form a opcion del navegante en el foro de Javascript en Foros del Web. Quiero hacer los siguiente que en un formulario con varios radiobutton, el usario indique a que mail quiere enviar dicho formulario. Es decir, que según ...
  #1 (permalink)  
Antiguo 22/11/2002, 12:58
Usuario no validado
 
Fecha de Ingreso: noviembre-2002
Mensajes: 6
Antigüedad: 21 años, 6 meses
Puntos: 0
Exclamación Envio de Form a opcion del navegante

Quiero hacer los siguiente que en un formulario con varios radiobutton, el usario indique a que mail quiere enviar dicho formulario.
Es decir, que según el radiobutton que cliqueé el usuario el form se envie a uno u otro mail.
Cómo hago??? Desde ya. muchas gracias por su colaboración
  #2 (permalink)  
Antiguo 22/11/2002, 15:52
Avatar de .
.
 
Fecha de Ingreso: mayo-2002
Ubicación: Tampico
Mensajes: 906
Antigüedad: 22 años
Puntos: 1
con una condicional if en el script del servidor

php
if ($valorRadio == 'unmail'){
$destino = '[email protected]'
}
if ($valorRadio == 'otromail'){
$destino = '[email protected]'
}
  #3 (permalink)  
Antiguo 22/11/2002, 16:44
Usuario no validado
 
Fecha de Ingreso: noviembre-2002
Mensajes: 6
Antigüedad: 21 años, 6 meses
Puntos: 0
Gracias,
pero yo quería saber como se hacía con Java Script
  #4 (permalink)  
Antiguo 22/11/2002, 16:51
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
Yo lo haría asi:

Código PHP:
<html>
 <
head>
  <
script language="JavaScript">

   var 
valorRadio 0;

   function 
valor(oRadio){
     
valorRadio oRadio.value;
   }

   function 
leeValor(){
    
document.frm.res.value valorRadio;
   }

  
</script>
 </head>
 <body>
  <form name="frm">
   <table border="0">
    <tr>
     <td>
      <input type="radio" name="rad" value="[email protected]

onclick="valor(this)">[email protected]
     </td>
     <td>
      <input type="radio" name="rad" value="[email protected]

onclick="valor(this)">[email protected]
     </td>
    </tr>
    <tr>
     <td>
      <input type="text" name="res">
     </td>
     <td>
      <input type="button" name="leer" value="¿Cual e-mail?" onclick="leeValor()">
     </td>
    </tr>
   </table>
  </form>
 </body>
</html> 
Saludos.
  #5 (permalink)  
Antiguo 22/11/2002, 17:28
Usuario no validado
 
Fecha de Ingreso: noviembre-2002
Mensajes: 6
Antigüedad: 21 años, 6 meses
Puntos: 0
Gracias Kaopectate por tu respuesta, pero me parece que se me entendió mal.
Yo quiero que al hacer click en el submit envié ese formulario al mail que haya seleccionado el usuario en el radiobutton
GRACIAS
  #6 (permalink)  
Antiguo 22/11/2002, 17:45
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
Te explico de memoria (quizás me equivoque).

Usa mi ejemplo pero con el <input type="text"> tipo hidden, con eso vas a tener un elemento que contenga la dirección a la que va a salir el mensaje.

El action de tu form debe llevar un mailto(...), pero como tienes que armar la dirección, entonces haz que el action llame a una función JavaScript, asi: action="javascript:armaSalida()".

La función debe armar el mensaje mas o menos asi:

Código PHP:
    function armaSalida() {
    var 
para   document.frm.txt.value;
    var 
cc     "";
    var 
asunto "Asunto tal";
    var 
cuerpo "Este es el mensaje";
    var 
mensaje;
    
mensaje "mailto:" para +
                      
"?cc=" cc +
                      
"&subject=" escape(asunto) +
                      
"&body=" escape(cuerpo);
    
window.location mensaje;
   } 

Cualquier duda, grita.
  #7 (permalink)  
Antiguo 22/11/2002, 19:36
Avatar de .
.
 
Fecha de Ingreso: mayo-2002
Ubicación: Tampico
Mensajes: 906
Antigüedad: 22 años
Puntos: 1
puedes hacer un arreglo con las diferentes direcciones a las que pudieras mandar el correo

function EnviarMail(){
var correo = new Array(
'[email protected]',
'[email protected]',
'[email protected]',
'[email protected]'
)
var a = document.Forma.mail.value;
document.Forma.Destino.value = correo[a];
}
<form name=Forma onsubmit="EnviarMail()">
<input type=hidden name=Destino id=Destino>
<input type=button name=mail value=1>[email protected]
<input type=button name=mail value=2>[email protected]
<input type=button name=mail value=3>[email protected]
<input type=button name=mail value=4>[email protected]
</form>
  #8 (permalink)  
Antiguo 23/11/2002, 05:31
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Un saludo a todos,

pues yo también voy a meter mi cuchara en este mensaje, que se me ha ocurrido también otra manera.

Amos a ver qué tal hacerlo así:

<form name="formu" method="post" action="">
<input type="radio" name="envia" value="[email protected]" onClick="document.formu.action='mailto:'+this.valu e">
[email protected]
<input type="radio" name="envia" value="[email protected]" onClick="document.formu.action='mailto:'+this.valu e">
[email protected]
<input type="radio" name="envia" value="[email protected]" onClick="document.formu.action='mailto:'+this.valu e">
[email protected]
<input type="radio" name="envia" value="[email protected]" onClick="document.formu.action='mailto:'+this.valu e">
[email protected]
<input type="submit" name="Submit" value="Enviar">
</form>

Así nos ahorramos de hacer funciones y es muy directo ¿no?

Saludos
  #9 (permalink)  
Antiguo 23/11/2002, 12:36
Avatar de .
.
 
Fecha de Ingreso: mayo-2002
Ubicación: Tampico
Mensajes: 906
Antigüedad: 22 años
Puntos: 1
hola tunait

muy bueno el código
  #10 (permalink)  
Antiguo 25/11/2002, 12:54
Usuario no validado
 
Fecha de Ingreso: noviembre-2002
Mensajes: 6
Antigüedad: 21 años, 6 meses
Puntos: 0
MIL GRACIAS!!!! a todos por la buena onda y por la colaboración. Me sirvieron los dos últimos codigos en especial.
saludinios y suerte!!
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 10:36.