使用jQuery,如何创建.eml文件,然后在Outlook中打开它?

时间:2019-02-04 22:26:37

标签: javascript jquery outlook

当某人点击我网页上的“电子邮件”按钮时,将使用jQuery创建一个包含我网页数据的.eml文件。创建并单击了eml文件的隐藏链接,该文件下载到该人的计算机上。该人然后可以在Outlook中打开eml文件。但是,我希望eml在不首先下载的情况下直接在Outlook中打开。

将html文件内容放在一起:

var emailContent = "To: " + "\n";
emailContent += "Subject: " + emailSubject + "\n";
emailContent += "X-Unsent: " + 1 + "\n"; 
emailContent += "Content-Type: text/html" + "\n";
emailContent += "\n";
emailContent += "<!DOCTYPE html><html><body>";  
emailContent += getTable(); 
emailContent += "</body></html>" 

创建eml文件并链接并单击它:

var blob = new Blob([emailContent], {type:"text/html"});
var url = window.URL.createObjectURL(blob);
var fileName = "file.eml";
var hiddenLink = document.createElement("a");

hiddenLink.download = fileName;
hiddenLink.href = url;

hiddenLink.onclick = destroyClickedElement;
hiddenLink.style.display = "none";
document.body.appendChild(hiddenLink);

downloadLink.click();

现在,我不确定该怎么办。如何直接在Outlook中打开文件?

我尝试将document.location.href设置为各种设置。

例如

document.location.href = "mailto:?subject=" + emailSubject + "&body=" + encodeURIComponent(emailContent);

但是他们没有用。

我应该添加创建eml文件的原因是因为这样做时,我无法使html内容正确显示在Outlook中:

document.location.href = "mailto:?subject=" + emailSubject + "&body=" + emailContent;

html标签不会呈现。

0 个答案:

没有答案