Solved

Mailto a TextBox value in Javascript/Html

Posted on 2004-08-03
10
4,501 Views
Last Modified: 2013-12-16
Hi,

First thanks for clicking

Have a Textbox called TeamString on a webpage.

Want to email the contexts of this Textbox in the mailto weblink

This is what I currently have

<a href="(mailto:entry@thefanleague.co.uk?subject=FanLeague Team String">
  Email Stuart</a>

Want the value of the Textbox to go directly in the Body of the email.

Realise ?body= goes into the anchor link. but not sure how to get the textbox value "document.Form1.TeamString.value" into the Body of the email.

Please note the TeamString Textbox is dynamically built by the user by a combination of different values in different comboboxes, so therefore each textbox is different for each user.

Many many thanks
Stuart
0
Comment
Question by:StuartK
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
10 Comments
 
LVL 15

Expert Comment

by:VincentPuglia
ID: 11703892
<a href="#" onclick='doit()'>  Email Stuart</a>

function doit()
{
  document.Form1.action = "mailto:entry@thefanleague.co.uk?subject=FanLeague Team String&&body=" + document.Form1.TeamString.value;
}

Problem is:  mailto: is unreliable.  It relies on the user having a mail program  and that program being set up 'properly'.  Many are not; mine, for example.

Vinny
0
 

Author Comment

by:StuartK
ID: 11704169
Hi Vinny,

Thank for replying.

Gave it a try.
Changed name of function to fit with application

It didn't work. But is definately going into function since I put an alert statement at the start.

function SendTeamString()
{
alert (document.frmEntry.TeamString.value);
document.frmEntry.action = "mailto:entry@thefanleague.co.uk?subject=FanLeague Team String&amp;&amp;body=" +
document.frmEntry.TeamString.value;
}

<a href="#" onclick='SendTeamString()'> Send Team</a>

Put this just above another function that I have, so guess I know it's in the right place.

Could it be the reliability issue you were talking about or am I missing something??

Your help is much appreciated Vinny,
Stuart


0
 
LVL 19

Expert Comment

by:webwoman
ID: 11704295
It's EXACTLY what Vinny was talking about.

Use another machine, a different browser (or different version), and it might work fine. You don't know, you can't know, and you also can't keep the user from changing the email or make the user mail it.

Process it on the SERVER, you know it works, and works for everybody. Plus spammers can't get your email from the mailto tag, because there isn't one. ;-)

You DO realize that's how they get a lot of emails, right?
0
Instantly Create Instructional Tutorials

Contextual Guidance at the moment of need helps your employees adopt to new software or processes instantly. Boost knowledge retention and employee engagement step-by-step with one easy solution.

 
LVL 15

Expert Comment

by:VincentPuglia
ID: 11704340
sorry :(

  I haven't had any espresso yet....

1)
this:    '&amp;&amp;'      should be:     '&&'

2)

function SendTeamString()
{
alert (document.frmEntry.TeamString.value);
window.location = "mailto:entry@thefanleague.co.uk?subject='FanLeague Team String'&&body=" + document.frmEntry.TeamString.value;
}

I wrote the function up as if it were for a form submission...again, sorry -- I'll go make some java now -- in case I messed up again :)
0
 
LVL 15

Accepted Solution

by:
VincentPuglia earned 95 total points
ID: 11704433
Hi webwoman :D

Stuart,
 webwoman does have a point.  However, if your site doesn't have any serverside mail support, you can break up the addy [like below]. It won't stop human spammers, but you won't have to worry about spiders.

function SendTeamString()
{
alert (document.frmEntry.TeamString.value);
  var toTxt = 'entry';
  var domainTxt = 'thefanleague.co.uk';
  window.location = "mailto:" + toTxt + '@' + domainTxt + "?subject='FanLeague Team String'&&body=" + document.frmEntry.TeamString.value;
}

espresso almost done now :)
Vinny
0
 
LVL 3

Assisted Solution

by:hyperslug
hyperslug earned 30 total points
ID: 11704448
Use VincentPuglia's code with window.open:

function SendTeamString()
{
      window.open = "mailto:entry@thefanleague.co.uk?subject=FanLeague Team String&amp;body=" + document.frmEntry.TeamString.value );
}

Also, use only 1 "&amp;".  It doesn't work with two like you have above.
0
 

Author Comment

by:StuartK
ID: 11704661
Thanks to all who helped and gave comments.

Vinny, can't thank you enough mate.

Only issue was as hyperslug suggested only needed 1 "&" - Thanks HyperSlug

Works perfect mate.

People on EE always astonish me how much they know and how helpful they are.

Hi Webwomen, point taken about ServersideScript but I don't have that support yet. Oh and yes, I am spammed 100's of times a day due to Website. Thanks for comfirming my worst suspicions.

Thank you to all.
0
 
LVL 11

Expert Comment

by:raj3060
ID: 11705505
Hi Stuart,
It was a bit tricky, anyway here is the working code,
++++++++++++++++++++++++++++++++
<html>
<head>
<title>Insert Text</title>
<script>
function mail(){
var message = document.form1.text1.value;
alert(message);
window.location="mailto:you@you.com?subject=Insert Text&body="+message+" ";
}
</script>
</head>
<body>
<form name="form1">
<textarea name="text1"></textarea>
<input type="button" onclick="javascript:mail()" value="MAIL" />
</form>
</body>
</html>
++++++++++++++++++++++++++++++++

I hope this is what you are looking for.
--Raj

0
 
LVL 15

Expert Comment

by:VincentPuglia
ID: 11706319
Hi Stuart,

  You're welcome.  Sorry I tried answering your question with my eyes and mind still closed :D

Vinny
0
 

Author Comment

by:StuartK
ID: 11707763
Hi Raj,

God I'm really sorry mate, but Vinny gave me similiar code.

It's a perfect answer as well!! For people in the future looking for a similiar solution in the search engines, even though it's not the "Accepted Answer" it's just as good.

It's like I said previously, it astonishes me how helpful people are on EE.

I cannot thank you enough Raj. I hope you recognise my genuineness by showing the courtesy of replying to the post, mate.

My best wishes,
Stuart
0

Featured Post

The Orion Papers

Are you interested in becoming an AWS Certified Solutions Architect?

Discover a new interactive way of training for the exam.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

When it comes to write a Context Sensitive Help (an online help that is obtained from a specific point in state of software to provide help with that state) ,  first we need to make the file that contains all topics, which are given exclusive IDs. …
Today, the web development industry is booming, and many people consider it to be their vocation. The question you may be asking yourself is – how do I become a web developer?
The purpose of this video is to demonstrate how to add AdSense Ads to a WordPress Website, and how to set up WordPress to automatically place Ads in Sidebars. This will be demonstrated using a Windows 8 PC. Log into your AdSense account. : Cli…
The viewer will learn how to look for a specific file type in a local or remote server directory using PHP.

622 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question