如何在HTML邮件正文部分的JS文件中添加变量?

时间:2019-05-01 17:15:23

标签: javascript html mailto

这与我要构建的Google Chrome扩展程序有关。

我目前有2个文件。一个JS文件和一个HTM1文件。

我想在HTML文件中使用JS变量。但是我在HTMl文件中使用了“ mailto”功能。因此,当有人单击HTML文件中的图像时,它将自动为用户打开电子邮件客户端,并自动填充“收件人”,“主题”和“正文”字段。

因此,我的JS文件中有一个变量,我希望将该变量的值附加到电子邮件收件箱的正文部分。

所以,我的问题是我该怎么做?

这是我的JS文件-

var all_details = "Core = " + core + "\n" + "Workspace GUID = " + workspaceId + "\n" + "Model GUID = " + modelId;

console.log(all_details);

//因此,在这里,我希望HTML邮件正文字段中来自“ all_details”变量的所有数据。

这是我的HTML代码-

<a id= "insert" href="mailto:abc@google.com?subject=Issue &body=${all_details}" target="_blank"><img border="0" src="support.png" width="50" height="50" title="Have questions?"></a>
<h3>Contact Us</h3>

所以,我希望当我单击上面的图像(从HTML src获取)时,它应该打开一个电子邮件收件箱(它现在可以打开)。

我只希望将JS中“所有详细信息”变量中的内容/数据粘贴到电子邮件收件箱的正文部分。

2 个答案:

答案 0 :(得分:1)

您可以使用JavaScript来检测对链接的点击并以这种方式访问​​变量,然后将用户“重定向”到mailto,而不用对href进行硬编码:而不用弄乱{{1} }。您也可以摆脱href。同样,您也不需要锚链接。

target="_blank"
var all_details = "testdata";

document.getElementById("insert").addEventListener("click",function(e){
     e.preventDefault();
     location.href = "mailto:abc@google.com?subject=Issue &body=" + all_details;
});
 #insert{cursor:pointer;}

答案 1 :(得分:-1)

您可以将事件侦听器添加到 insert 链接,然后将该变量附加到其 href 上。下面是一个示例;

let insertA = document.getElementById('insert');
let allDetails = 'test-string';

insertA.addEventListener('click', function(e){
  e.preventDefault();
  this.href = this.href + allDetails;
  console.log(this.href);
})
<a id= "insert" href="mailto:abc@google.com?subject=Issue&body=" target="_blank"><img border="0" src="support.png" width="50" height="50" title="Have questions?"></a>
<h3>Contact Us</h3>