将 HTML 电子邮件正文中的变量用作超链接中的 URL



我有一个谷歌脚本,可以从电子表格发送HTML电子邮件。 电子表格中的一个单元格包含可更改的 URL,因为它由其他单元格的值组成。 在我的 GS 中,我将此 URL 读入变量。 现在,我想在我的 HTML 代码中使用此变量来呈现电子邮件,以便电子邮件接收者可以单击打开此自定义 URL 的链接。

我找不到将固定 URL 替换为保存我的自定义 URL 的变量的解决方案 请检查 HTML 代码,其中显示" " 这就是我放置 var 的地方,但这样做显然是错误的。

**** Google script*****
var CO_PP = COSheet.getRange(2,11).getValue() ; 
var CO_PP_href =  ("<a href="" + CO_PP + "">")  ;  //  use a backslash  to escape the quotation marks. 
var EmailBody =  HtmlService.createTemplateFromFile(template); 
EmailBody.EmailVar1 = CO_Name;
EmailBody.EmailVar2 = CO_Email;
EmailBody.EmailVar13 = CO_PP_href;

var MyHtmlBody = EmailBody.evaluate().getContent()
var EmailSubject = "Credits Order SUCCES  .:: CADsherpa Weblink ::."
MailApp.sendEmail(CO_Email, EmailSubject, "Your emailreader does not support HTML." + 
" Try opening this message with a different email reader or take contact with info@cadsherpa.com", {htmlBody: MyHtmlBody, attachments: PDF_ToSend });



*******HTML*******
<!-- button start -->  
<div>
<p>&nbsp;</p>
<table align="left" border="0" cellpadding="1" cellspacing="1" style="height:10px;width:185px;">
<tbody>
<tr>
<td style="white-space: nowrap; text-align: center; vertical-align: middle; background-color: rgb(51, 102, 255);">
<h3> +<?= EmailVar13 ?>+ <span style="font-size:18px;">  <!-- PROBLEM ON THIS LINE -->  
<strong><em><span style="font-family:arial,helvetica,sans-serif;">
<span style="color:#FFFFFF;">Pay with PayPal </span></span></em></strong></span></a></h3>
</td>
</tr>
</tbody>
</table>
<p>&nbsp;</p>
</div>                   
<!-- button end -->   

在 GAS 中使用 HTML 模板时,分配给模板的变量将被转义。这意味着,在您的情况下,如果CO_PP_href设置为表达式"<a href="" + CO_PP + "">"则实际标记将不会放入 HTML 中,而是将其放入转义版本(&lt;a href=&#34;...&#34;&gt;(,以便可以在页面中将其视为可打印的"文本"。

为了您的需求,我提出了一个不同的解决方案。您可以先在 html 模板中创建<a>标签,在评估模板时只会设置其href属性。解决方案如下所示:

.HTML

<!-- button start -->  
<div>
<p>&nbsp;</p>
<table align="left" border="0" cellpadding="1" cellspacing="1" style="height:10px;width:185px;">
<tbody>
<tr>
<td style="white-space: nowrap; text-align: center; vertical-align: middle; background-color: rgb(51, 102, 255);">
<h3> <a href="<?= EmailVar13 ?>"> <span style="font-size:18px;">
<strong><em><span style="font-family:arial,helvetica,sans-serif;">
<span style="color:#FFFFFF;">Pay with PayPal </span></span></em></strong></span></a></h3>
</td>
</tr>
</tbody>
</table>
<p>&nbsp;</p>
</div>                   
<!-- button end -->   

var CO_PP = COSheet.getRange(2,11).getValue() ; 
var EmailBody = HtmlService.createTemplateFromFile(template); 
EmailBody.EmailVar1 = CO_Name;
EmailBody.EmailVar2 = CO_Email;
EmailBody.EmailVar13 = CO_PP;
var MyHtmlBody = EmailBody.evaluate().getContent()
var EmailSubject = "Credits Order SUCCES  .:: CADsherpa Weblink ::."
MailApp.sendEmail(CO_Email, EmailSubject, "Your emailreader does not support HTML." + 
" Try opening this message with a different email reader or take contact with info@cadsherpa.com", {htmlBody: MyHtmlBody, attachments: PDF_ToSend });

最新更新