Foros del Web » Programando para Internet » Javascript »

construir contenido email

Estas en el tema de construir contenido email en el foro de Javascript en Foros del Web. Wenas: Tengo en una pagina un formulario con campos a rellenar por usuario y q se deben enviar por email. Se q si pones Código: ...
  #1 (permalink)  
Antiguo 15/09/2003, 03:22
Avatar de fjmasero  
Fecha de Ingreso: diciembre-2002
Mensajes: 488
Antigüedad: 21 años, 5 meses
Puntos: 1
construir contenido email

Wenas:

Tengo en una pagina un formulario con campos a rellenar por usuario y q se deben enviar por email.

Se q si pones
Código:
<a href="mailto:[email protected]?body=contenido del mensaje">
al abrirse el cliente de correo para nuevo mensaje, en el cuerpo aparecería lo puesto en body.

Pensaba q lo mismo funcionaría cuando el envio del mail se hace a través de un submit (form ... action="mailto:...").

Pero no funciona. El contenido se construye "automáticamente" con todos los campos del formulario, pero yo no quiero q se muestren todos.

Para ello, con javascript, antes del .submit(), recorro el formulario, recogiendo los valores de los campos q quiero, construyendo un string.

Después, hago
Código:
document.forms[0].action = "mailto:[email protected]?body="+str;
document.forms[0].submit();
siendo str el string con los datos del formulario, habiendo comprobado q está bien construido.

Pues na' de na', pq ignora lo q se pone en el body.

He probado a poner, por ejemplo,
Código:
document.forms[0].action = "mailto:[email protected]?body=wenas";
y el wenas no sale en el mail q se recibe.

¿Alguién sabe como puedo construir el contenido del mail en un action=mailto:...?.

Salu2 y gracias
__________________
No es sabio el que sabe sino el que no sabe y quiere aprender
  #2 (permalink)  
Antiguo 15/09/2003, 11:45
 
Fecha de Ingreso: enero-2002
Mensajes: 265
Antigüedad: 22 años, 3 meses
Puntos: 0
ei forero, tengo tu solucion, creo que es la primera respuesta q puedo dar ;)

Mira, entre head pones:
Cita:
<script>
function enviar(){
var text=document.form1.text.value;
document.location.href="mailto:[email protected]?body= "+text;
}
</script>
El cuadro donde el usuario escribe tiene que llamarse "text" y el nombre del formulario form1 (para q funcione con mi codigo). a la action del formulario le pones javascript:enviar();

Y listos... A mi me ha funcionado...

Ya diras cosas, salu2
  #3 (permalink)  
Antiguo 17/09/2003, 01:51
Avatar de fjmasero  
Fecha de Ingreso: diciembre-2002
Mensajes: 488
Antigüedad: 21 años, 5 meses
Puntos: 1
En cuanto pueda lo pruebo, q ahora me tienen pillado con otro tema.

De todas formas, ¿el location.href ="mailto:..." no provoca q se abra el cliente de correo con la ventana de un nuevo mensaje?.

Salu2
__________________
No es sabio el que sabe sino el que no sabe y quiere aprender
  #4 (permalink)  
Antiguo 17/09/2003, 05:30
 
Fecha de Ingreso: enero-2002
Mensajes: 265
Antigüedad: 22 años, 3 meses
Puntos: 0
no te entiendo. El location.href=mailto.... hace q se abra un nuevo correo de outlook pero ya con la dirección y texto rellenado. No buscabas eso? Que quieres que se envie automaticamente?

A10
  #5 (permalink)  
Antiguo 20/09/2003, 13:47
Avatar de fjmasero  
Fecha de Ingreso: diciembre-2002
Mensajes: 488
Antigüedad: 21 años, 5 meses
Puntos: 1
Hola splig:

Te explico.

Tengo un formulario. y su contenido lo quiero enviar por email.

Pero si lo que hago es un submit con un action="mailto...." lo que hace es enviar un mensaje con el contenido de TODOS los campos del formulario.

La cuestión es q yo solo quiero que en el mensaje aparezcan ALGUNOS de los campos.

Para ello, probe a poner el action="maito...?body=... para incluir el contenido q quiero en el mensaje, pero si lo pongoen el action, no funciona, pero si en el location.href.

Espero haberme explicado.

Salu2
__________________
No es sabio el que sabe sino el que no sabe y quiere aprender
  #6 (permalink)  
Antiguo 21/09/2003, 06:08
 
Fecha de Ingreso: enero-2002
Mensajes: 265
Antigüedad: 22 años, 3 meses
Puntos: 0
entonces hazlo con location.href y en el body le metes solo los campos que quieres. no? O quieres que se envie sin q se abra el mensaje en outlook?
  #7 (permalink)  
Antiguo 21/09/2003, 13:32
Avatar de fjmasero  
Fecha de Ingreso: diciembre-2002
Mensajes: 488
Antigüedad: 21 años, 5 meses
Puntos: 1
Efectivamente, sin q se abra el cliente de correo, pq si no, ¿para q el formulario?.
__________________
No es sabio el que sabe sino el que no sabe y quiere aprender
  #8 (permalink)  
Antiguo 21/09/2003, 13:35
 
Fecha de Ingreso: enero-2002
Mensajes: 265
Antigüedad: 22 años, 3 meses
Puntos: 0
y para que el formulario entero si solo se tiene que enviar una parte del form? Tal vez puedes sacar lo q no quieras fuera del form... no se. ahi ya no t puedo ayudar, lo siento
  #9 (permalink)  
Antiguo 22/09/2003, 03:27
Avatar de fjmasero  
Fecha de Ingreso: diciembre-2002
Mensajes: 488
Antigüedad: 21 años, 5 meses
Puntos: 1
En teoria, y solo en teoria, pq en IE funciona, aunque no debería, elementos input, textarea, etc., deben estar siempre dentro del grupo de un <form ...
__________________
No es sabio el que sabe sino el que no sabe y quiere aprender
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 16:09.