我正在用WebView构建应用程序。你并不需要知道,但这是我需要回答这个问题的原因,没有其他方法。带JavaScript的Email Textarea URL代码
有没有办法在textarea对象所在的网页上放置某种脚本,然后在URL中输入某种JavaScript代码后,它将打开默认的邮件程序, textarea作为消息的正文部分。
混淆,我知道,但读了几次。
(注:当我说弹出默认的邮件程序,我的意思是一样的相同方法的mailto,当它在默认的邮件应用程序打开)
我正在用WebView构建应用程序。你并不需要知道,但这是我需要回答这个问题的原因,没有其他方法。带JavaScript的Email Textarea URL代码
有没有办法在textarea对象所在的网页上放置某种脚本,然后在URL中输入某种JavaScript代码后,它将打开默认的邮件程序, textarea作为消息的正文部分。
混淆,我知道,但读了几次。
(注:当我说弹出默认的邮件程序,我的意思是一样的相同方法的mailto,当它在默认的邮件应用程序打开)
随着假设textarea
有一个id="ta1"
,这是你在找什么输入到地址栏:
javascript:location.href="mailto:[email protected]?body="+document.getElementById("ta1").value;
编辑:
得到相同的动作进行按钮点击:
<input type="button" onclick="location.href="mailto:[email protected]?body="+document.getElementById("ta1").value;" value="Send">
也适用于Android股票浏览器
一个mailto
链接可以包括默认的主题/消息在其中使用URL参数。
<a href="mailto:[email protected]?subject=My%20Subject&body=My%20message">
所以,最好的方式来实现你想要的是建立动态的基础上,<textarea>
输入元素的值的URL。然后,您可以将URL分配给锚标签的href
属性,或直接将其分配给window.location
。
不幸的是,它看起来不像<form action="mailto:…">
的作品,所以你将需要一些JS。
只需绑定一个监听器onkeyup
和onchange
事件运行,创建一种权利mailto:
链接的功能<textarea>
。
$("#sendMail").on("keyup change", function(){
$(this).attr("href", "mailto:......");
});
您可以将特定的RECEIPIENT,主题和正文是这样的:
<a id="sendMail" href="mailto:[email protected]?subject=abcdef&body=bodyMessage">Send</a>
然后使用一些CSS样式的链接看起来像一个按钮。例如。
#sendMail { display: block; background: #EEE; border: 1px solid #CCC; color: #000; }
您希望您的用户在浏览器的地址栏中输入JavaScript代码以打开其邮件程序? ...为什么不使用'mailto'链接?或者让他们使用他们的GUI(或通过他们通常会这样做的其他方式)打开他们的电子邮件程序? – 2012-03-06 22:50:02