2

我正在创建一个发送电子邮件的表单(仅使用 HTML 和 JavaScript)。我想在电子邮件正文中插入一个简单的 HTML 表格。像这样的东西:

<table border=1> <tr><td>blabla</td></tr> </table>

单击“发送”按钮后,将调用一个 JavaScript 函数,该函数通过 URL 发送电子邮件,并且 POST 数据出现在我的电子邮件客户端 - Outlook(这对我来说没问题)中,但格式存在问题。电子邮件正文中的数据为纯文本。

  1. 有没有其他方法可以仅使用 JavaScript 来做到这一点?
  2. 是否有必要使用某种服务器端脚本(如 PHP 或其他)来正确格式化它?
4

3 回答 3

1

您可以使用 JavaScript mailto 功能。试试这个,希望对你有帮助

<div id="mailBody"><table border=1> <tr><td>blabla</td></tr> </table></div>
<input type="button" onclick="sendMail();">

在脚本标签下

function sendMail()
{
   var mailBody=document.getElementById('mailBody').innerHTML;
   window.location="mailto:yourmail@domain.com?subject=hii&body="+mailBody;
}
于 2013-02-26T13:23:22.653 回答
0

如果您只想使用 java 脚本发送 HTML 电子邮件,请尝试如下...

但我不推荐这种类型的邮件发送....

通过 Javascript 发送 HTML 电子邮件:

function SendEmail()
{
    var outlookApp = new ActiveXObject("Outlook.Application");
    var nameSpace = outlookApp.getNameSpace("MAPI");
    mailFolder = nameSpace.getDefaultFolder(6);
    mailItem = mailFolder.Items.add('IPM.Note.FormA');
    mailItem.Subject = "Me";
    mailItem.To = "me@me.com";
    mailItem.HTMLBody = "<table border=1> <tr><td>blabla</td></tr> </table>";
    mailItem.display(0);
}

如果您只想通过javascript以纯文本形式发送电子邮件,请尝试如下...

通过 Javascript 发送纯文本:

window.open('mailto:test@example.com?subject=subject&body=Testing Email');

最好使用服务器端编码发送电子邮件

于 2013-02-26T13:35:14.740 回答
-1

<如果您查看源代码,这些角色是什么样的?如果他们喜欢&#60;,或者&lt;你需要禁用这些编码。此外,您需要将格式设置为 HTML 邮件。对不起,我不是PHP人,但我想你需要服务器端代码。

于 2013-02-26T13:07:49.183 回答