469,286 Members | 2,521 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 469,286 developers. It's quick & easy.

Carriage Return Email Body

TJO
I am trying to pre populate an email body using javascript. I cannot figure
out how to control the carraige returns for the text. The standard \r\n is
not working. Is there another technique I can try?
Jul 23 '05 #1
16 9212
TJO wrote:
I am trying to pre populate an email body using javascript.
Give up now and save yourself a lot of grief.
I cannot figure out how to control the carraige returns for
the text. The standard \r\n is not working.
Nope, that doesn't work.
Is there another technique I can try?


Submit a form, let the server send the email

--
Randy
comp.lang.javascript FAQ - http://jibbering.com/faq
Jul 23 '05 #2
TJO wrote:
I am trying to pre populate an email body using javascript. I cannot figure
out how to control the carraige returns for the text. The standard \r\n is
not working. Is there another technique I can try?


Randy is trying to say that this is very unreliable, as the user may
not have an email client configured, or it may not support all the
features of mailto.

For example, Lotus Notes will not accept a body of more than 200
characters, so whilst you may get away with this on a controlled
intranet, you should not use it on the web.

The following works with Lotus Notes based on the principle of escaping
the text (%0A is a return):

<a href='mailto:ro*@myemail.com?SUBJECT=E-mail with broken
lines&body=Here%20is%20a%20line%20with%0Aa%20break '>Click
here to send...</a>

An alternative using \n and the escape function (you can use \r too if
that suits better):

<a href='' onclick="
this.href='mailto:ro*@myemail.com?SUBJECT=E-mailform&body='
+ escape('This is\na broken\nline');
">Click here to send...</a>

As noted, only lightly tested and certainly not considered suitable for
the web for the stated reasons.

Cheers, Rob.
Jul 23 '05 #3
RobG wrote:
[...]

<a href='' onclick="
this.href='mailto:ro*@myemail.com?SUBJECT=E-mailform&body='
+ escape('This is\na broken\nline');
">Click here to send...</a>


You can make that marginally more reliable in case JavaScript isn't
working by putting a useful href that *may* work regardless of
whether JavaScript is enabled:

<a href='mailto:ro*@myemail.com?SUBJECT=E-mailform&body=Hi'
onclick="
this.href='mailto:ro*@myemail.com?SUBJECT=E-mailform&body='
+ escape('This is\na broken\nline');
">Click here to send...</a>

Using an onclick means you can get the content from a textarea or
similar too.

But it may still fail for the reasons Rob stated, and making it rely on
both JavaScript and mailto is kinda double jeopardy

Fred.
Jul 23 '05 #4
TJO wrote on 23 nov 2004 in comp.lang.javascript:
I am trying to pre populate an email body using javascript.


Sure you can do that with serverside javascript.

But my guess is that you mean clientside in a browser.

Since the browsers in this world don't have a standard email client
connected, the only and very unreliable way is to use "mailto:' linking.

Advice: don't!

--
Evertjan.
The Netherlands.
(Please change the x'es to dots in my emailaddress,
but let us keep the discussions in the newsgroup)

Jul 23 '05 #5
TJO
Well boys and girls. I used the following script and tag
combo and I have not seen it not work yet.

Here is the tag:
<script type="text/javascript" language="JavaScript"
src="mailtosupport.js"></script>

This is the content of the mailtosupport.js file:
<!-- Begin
sendto = "my*****@atbigcompany.com";
subject = "Support Request";
lf = escape('\r');
tab = escape('\t')

body = "Thank you for taking the time to notify us with an issue." + lf +
lf;
body += "If you have found an error in our system, please, to the best of
your ability answer the following questions." + lf + lf;
body += "Otherwise simply erase the following content and write you own.";
body += lf + lf + lf;
body += "1)" + tab + "Please describe the error, issue, or request:" + lf +
lf + lf;
body += "2)" + tab + "Please describe the time of day the issue occurred:" +
lf + tab + " The current Time is: " + Date() + lf + lf + lf;
body += "3)" + tab + "Please describe what you expected to occur:" + lf + lf
+ lf + lf;
document.write(
'<a href=\"mailto:'
+ sendto
+ '?subject='
+ subject
+ '&body='
+ body
+ '\">');
document.write('Email Support'+'</a>');
End -->


"TJO" <no@spam.net> wrote in message
news:Sauod.126419$cJ3.54345@fed1read06...
I am trying to pre populate an email body using javascript. I cannot
figure out how to control the carraige returns for the text. The standard
\r\n is not working. Is there another technique I can try?

Jul 23 '05 #6
In article <wsKod.168785$hj.138021@fed1read07>, no@spam.net says...
"TJO" <no@spam.net> wrote in message
news:Sauod.126419$cJ3.54345@fed1read06...
I am trying to pre populate an email body using javascript. I cannot
figure out how to control the carraige returns for the text. The standard
\r\n is not working. Is there another technique I can try?
Well boys and girls. I used the following script and tag
combo and I have not seen it not work yet.


Of course you haven't seen it fail, dummy. How many of your visitors
have, though, and have pushed off to another site that uses a reliable,
grown-up, way of handling form to email data?

Brilliant attitude - it works for me so it must work for everyone else.

--
Hywel
Jul 23 '05 #7
TJO wrote:
Well boys and girls. I used the following script and tag
combo and I have not seen it not work yet.
And you never will see it not work because you will never receive E-mail from
people on whose computers it does not work. This is a classic case of seeing the
result you expect. "It works for everyone who has sent me an E-mail!". Well,
yes, for those people who have sent you an E-mail, it did work.
document.write(
'<a href=\"mailto:'
+ sendto
+ '?subject='
+ subject
+ '&body='
+ body
+ '\">');
document.write('Email Support'+'</a>');
End -->


That last line is just wrong. If you insist on using HTML comments, you should
comment them out in JavaScript so as not to cause a syntax error:

// End -->

However, HTML comments inside <script></script> tags can be removed entirely.

--
Grant Wagner <gw*****@agricoreunited.com>
comp.lang.javascript FAQ - http://jibbering.com/faq

Jul 23 '05 #8
On Tue, 23 Nov 2004 18:53:49 -0000, Hywel Jenkins
<hy**********@hotmail.com> wrote:

[snip]
Of course you haven't seen [the mailto: script] fail, dummy. How many
of your visitors have, though, and have pushed off to another site that
uses a reliable, grown-up, way of handling form to email data?

Brilliant attitude - it works for me so it must work for everyone else.


I am always perplexed by that line of thinking.

"No-one's e-mailed me to tell me that my mail system doesn't work
for them."

Really? I wonder why.

Good grief...

Mike

--
Michael Winter
Replace ".invalid" with ".uk" to reply by e-mail.
Jul 23 '05 #9
TJO
Well Hywink,
I have tested in on other browsers and have not seen it not work on any. If
you can or others can tell me where it won't work then that is what I was
looking for.
Otherwise it appears to be valid solution.
"Hywel Jenkins" <hy**********@hotmail.com> wrote in message
news:MP***********************@news.individual.net ...
In article <wsKod.168785$hj.138021@fed1read07>, no@spam.net says...
"TJO" <no@spam.net> wrote in message
news:Sauod.126419$cJ3.54345@fed1read06...
>I am trying to pre populate an email body using javascript. I cannot
>figure out how to control the carraige returns for the text. The
>standard
>\r\n is not working. Is there another technique I can try?
>

Well boys and girls. I used the following script and tag
combo and I have not seen it not work yet.


Of course you haven't seen it fail, dummy. How many of your visitors
have, though, and have pushed off to another site that uses a reliable,
grown-up, way of handling form to email data?

Brilliant attitude - it works for me so it must work for everyone else.

--
Hywel

Jul 23 '05 #10
In article <VIOod.127305$cJ3.123019@fed1read06>, no@spam.net says...
"Hywel Jenkins" <hy**********@hotmail.com> wrote in message
news:MP***********************@news.individual.net ...
In article <wsKod.168785$hj.138021@fed1read07>, no@spam.net says...
"TJO" <no@spam.net> wrote in message
news:Sauod.126419$cJ3.54345@fed1read06...
>I am trying to pre populate an email body using javascript. I cannot
>figure out how to control the carraige returns for the text. The
>standard
>\r\n is not working. Is there another technique I can try?
>
Well boys and girls. I used the following script and tag
combo and I have not seen it not work yet.


Of course you haven't seen it fail, dummy. How many of your visitors
have, though, and have pushed off to another site that uses a reliable,
grown-up, way of handling form to email data?

Brilliant attitude - it works for me so it must work for everyone else.


Well Hywink,
I always know I'm dealing with an intellectual tosser when that sort of
thing creeps up.

I have tested in on other browsers and have not seen it not work on any.
Combinations?

If
you can or others can tell me where it won't work then that is what I was
looking for.
You were looking for a malformed URL? Something that can cause the
email to be sent as expected; the email to be sent blank; the email not
to be sent; the email client to crash; the OS to crash; is there an
email client on the visitor's computer? Think, boy, think.

Otherwise it appears to be valid solution.


It may appear to be whatever you want. A "valid solution", however, it
isn't.

--
Hywel
Jul 23 '05 #11
TJO wrote:
Well boys and girls. I used the following script and tag
combo and I have not seen it not work yet.


Only because you have failed to test it properly.

It fails for me for my IE6 and default email client.
It fails for me for my Mozilla and default email client.

--
Randy
comp.lang.javascript FAQ - http://jibbering.com/faq
Jul 23 '05 #12
TJO
What fails? What email client are you using??

Mine tested fine. Very curious.
"Randy Webb" <Hi************@aol.com> wrote in message
news:Zs********************@comcast.com...
TJO wrote:
Well boys and girls. I used the following script and tag
combo and I have not seen it not work yet.


Only because you have failed to test it properly.

It fails for me for my IE6 and default email client.
It fails for me for my Mozilla and default email client.

--
Randy
comp.lang.javascript FAQ - http://jibbering.com/faq

Jul 23 '05 #13
TJO
Who uses Lotus Notes anymore???

"RobG" <rg***@iinet.net.auau> wrote in message
news:Lg*****************@news.optus.net.au...
TJO wrote:
I am trying to pre populate an email body using javascript. I cannot
figure out how to control the carraige returns for the text. The
standard \r\n is not working. Is there another technique I can try?


Randy is trying to say that this is very unreliable, as the user may
not have an email client configured, or it may not support all the
features of mailto.

For example, Lotus Notes will not accept a body of more than 200
characters, so whilst you may get away with this on a controlled
intranet, you should not use it on the web.

The following works with Lotus Notes based on the principle of escaping
the text (%0A is a return):

<a href='mailto:ro*@myemail.com?SUBJECT=E-mail with broken
lines&body=Here%20is%20a%20line%20with%0Aa%20break '>Click
here to send...</a>

An alternative using \n and the escape function (you can use \r too if
that suits better):

<a href='' onclick="
this.href='mailto:ro*@myemail.com?SUBJECT=E-mailform&body='
+ escape('This is\na broken\nline');
">Click here to send...</a>

As noted, only lightly tested and certainly not considered suitable for
the web for the stated reasons.

Cheers, Rob.

Jul 23 '05 #14
TJO wrote:
What fails?
The link fails. What else?
What email client are you using??
My default/preferred email client when browsing the web is a web-based
Flash Form based email client through Comcast Cable.

Steps to compose mail:

Navigate to the comcast web site.
Navigate to the Email page.
Login via a Flash App that does not accept parameters (can't auto login).
Click Compose Mail.
Compose the Mail.

If you can create a link that does all that then you might have a
fool-proof script. Of course, its a simple matter of clicking "Submit"
to submit a form and send the email if its done the most reliable way -
a server side script.
Mine tested fine.
So do popups onload for people that don't have them disabled.
Very curious.


I am curious too. Can you define "top-posting" for me please? Its
explained in the group FAQ.

<--snip-->

--
Randy
comp.lang.javascript FAQ - http://jibbering.com/faq
Answer:It destroys the order of the conversation
Question: Why?
Answer: Top-Posting.
Question: Whats the most annoying thing on Usenet?
Jul 23 '05 #15
TJO wrote:
Who uses Lotus Notes anymore???


People (corporations) who have bought it.
People who know how to read FAQ's.
--
Randy
comp.lang.javascript FAQ - http://jibbering.com/faq
Answer:It destroys the order of the conversation
Question: Why?
Answer: Top-Posting.
Question: Whats the most annoying thing on Usenet?
Jul 23 '05 #16
Rather than "/r/n", try "%0a" for the carraige returns in your message
body.

Jul 23 '05 #17

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

3 posts views Thread by Dave Tichenor | last post: by
1 post views Thread by =?Utf-8?B?TWlrZQ==?= | last post: by
11 posts views Thread by evenlater | last post: by
1 post views Thread by CARIGAR | last post: by
reply views Thread by suresh191 | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.