Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/09/2008, 01:08
Avatar de Nlrvana
Nlrvana
 
Fecha de Ingreso: marzo-2008
Mensajes: 36
Antigüedad: 16 años, 1 mes
Puntos: 0
Cómo poner saltos de linea en un textarea externo

Hola, no sabía si poner este hilo en la sección de Javascript o aquí, pero es que es un tema de PHP y de Javascript. Si eso que el Moderador lo mueva.

A ver, tengo un formulario que sirve para rellenar los datos de un correo que a continuación envío a otra página de un sitio externo. No tengo acceso a esa página y no la puedo modificar. Llamémosle "el otro lado".

La página admite las variables $subject y $message por GET como asunto y texto respectivamente, y las envía a sendos input y textarea que contiene, entonces, en vez de usar un submit yo se lo estoy mandando a través de un onclick y funciona bien.

Más quisiera yo que usar un submit para hacerlo, pero no me lo admite, solo funciona abriendo una ventana nueva con el window.open y enviandole las variables por GET (además ¿cómo le mando los contenidos del input y el textarea en el action?)

Resumiendo, así es como lo hago:

Código PHP:
<form name="correo" action="">
<input type="text" name="asunto" value="Asunto:">
<textarea name="texto">Texto:</textarea>
<a href="#" onclick="window.open('http://sitio.com/gestion.php?userid=<?=$id?>&subject='+document.correo.asunto.value+'&message='+document.correo.texto.value)"</a>
</form>
El problema es que mandándolo de esa manera en el textarea del otro lado no aparece ningún salto de línea (aunque se pongan en este lado), por lo que el mensaje queda un poco "apelotonado".

Se me había ocurrido aplicarle la función urlencode() de PHP al texto antes de mandarlo pero no se cómo aplicarle esa función a document.correo.asunto.value dentro del onclick sin que me de error. Además no estoy seguro de que eso funcione.

También se me había ocurrido introducir al texto sendos %0A en cada salto de línea (haciendo eso sí que funciona en el otro lado) pero no se me ocurré cómo.

¿Teneis una idea de cómo podría enviar los saltos de línea y que funcione en el otro lado?

Gracias adelantadas.

Última edición por Nlrvana; 04/09/2008 a las 01:16