使用JavaScript URL代码向Textarea发送电子邮件

时间:2012-03-06 22:46:11

标签: javascript html mailto

我正在使用WebView构建应用程序。你真的不需要知道这一点,但这就是我需要回答这个问题的原因,没有替代方法。

无论如何将某种脚本放在与textarea对象相同的网页上,然后在URL中输入某种JavaScript代码后,它将打开默认的邮件程序,用户从textarea输入文本作为信息的正文部分。

令人困惑,我知道,但是阅读了几次。

(注意:当我说弹出默认邮件程序时,我的意思与 mailto 的方法相同,当它在默认邮件应用程序中打开时)

3 个答案:

答案 0 :(得分:1)

mailto链接可以使用网址参数在其中包含默认主题/消息。

<a href="mailto:someone@example.com?subject=My%20Subject&body=My%20message">

因此,实现所需内容的最佳方法是根据<textarea>输入元素的值动态构建URL。然后,您可以将网址分配给锚标记的href属性,或直接分配给window.location

可悲的是,它看起来不像<form action="mailto:…">,所以你需要一些JS。

答案 1 :(得分:0)

只需将侦听器绑定到运行创建正确onkeyup链接的函数的onchange的{​​{1}}和<textarea>事件。

mailto:

您可以按照以下方式指定收件人,主题和正文:

$("#sendMail").on("keyup change", function(){
    $(this).attr("href", "mailto:......");
});

然后使用一些CSS来设置链接的样式,使其看起来像一个按钮。 E.g。

<a id="sendMail" href="mailto:user@domain.com?subject=abcdef&body=bodyMessage">Send</a>

答案 2 :(得分:0)

假设textarea有一个id="ta1",这就是您要在地址栏中输入的内容:

javascript:location.href="mailto:a@b.com?body="+document.getElementById("ta1").value;

修改

在按钮点击上执行相同的操作:

<input type="button" onclick="location.href=&quot;mailto:a@b.com?body=&quot;+document.getElementById(&quot;ta1&quot;).value;" value="Send">

也适用于Android股票浏览器