javascript - 使用 google 脚本和 html 模板循环进入要点

标签 javascript html google-apps-script html-email

我面临的问题:
我有一个包含单元格的电子表格,这些单元格将通过 Google Apps 脚本填充电子邮件的 HTML 模板。这些单元格链接到 HTML 模板中的项目符号列表,我希望根据单元格中是否包含信息,长度为 1 - 6 个项目符号。我目前正在努力寻找一种方法来循环单元格而不在最终电子邮件中包含空白项目符号。
我研究了各种类似的方法,但没有什么能完全适应我的脚本中所需的循环和项目符号数量。
下面是一些相关的代码:

 template.tweb = web.getRange(1,1).getValue();
 template.tweb1 = web.getRange(2,1).getValue();
 template.tweb2 = web.getRange(3,1).getValue();    
 template.tweb3 = web.getRange(4,1).getValue();
 template.tweb4 = web.getRange(5,1).getValue();
 template.tweb5 = web.getRange(6,1).getValue();
我目前在没有循环的情况下设置了它,因为我无法获得比最后一行更多的内容来填充 HTML 模板。
这是 HTML 代码:
<p><strong>Website Development</strong></p>
<em>Weekly Highlights</em>
<br>
<ul>
 <li>The Website Development team completed the following:</li>
  <ul><li> <?= tweb ?></li></ul>
  <ul><li> <?= tweb1 ?></li></ul>
  <ul><li> <?= tweb2 ?></li></ul>
  <ul><li> <?= tweb3 ?></li></ul>
  <ul><li> <?= tweb4 ?></li></ul>
  <ul><li> <?= tweb5 ?></li></ul>
此外,这是我失败的循环代码的示例:
var e = pr.getLastRow();
 for (var i = 1; i < e+1 ; i++ ) {
 var tpr = pr.getRange(i,1).getValue();
 }
   template.tpr = tpr;
<p><strong>Public Relations</strong></p>
<em>Weekly Highlights</em>
<ul>
 <li><?= tpr ?></li>
</ul>
谢谢您的帮助!!

最佳答案

在您的情况下,最好使用 Apps Script scriptlets
它们允许您动态创建 html,将循环和语句与 html 代码集成。
sample :
代码.gs

function doGet() {
  var template = HtmlService.createTemplateFromFile("index");
  return template.evaluate();
}

function getData() {
  var web = SpreadsheetApp.getActive().getActiveSheet();
  return web.getRange(1,1,6,1).getValues();
}
索引.html
<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
  </head>
  <body>
    <p><strong>Website Development</strong></p>
<em>Weekly Highlights</em>
<br>
<ul>
 <li>The Website Development team completed the following:</li>
  <? var data = getData(); ?>
   <? for (var i = 0; i < data.length; i++) { ?>
     <? if (data[i][0]!="" && data[i][0]!=" ") { ?>
       <ul><li> <?= data[i][0] ?></li></ul>
     <? } ?>
   <? } ?>
  </ul>
  </body>
</html>

关于javascript - 使用 google 脚本和 html 模板循环进入要点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63398785/

相关文章:

javascript - map d3 javascript中的绘图点

javascript - 为什么我的 JavaScript 计算器一直输出 0?

typescript - doGet/doPost 触发函数事件对象是否有类型定义?

javascript - 从两个不同的字符串中选择

javascript - 滚动离开后,scrollspy 导航栏保持事件状态

html - CSS - 文本溢出不适用于基于百分比的 div

html - margin 对不相关的 div 有影响

javascript - 如何在谷歌应用程序脚本生成的电子邮件中以正确的格式向电子邮件添加签名

email - 以机器可读的格式从 Google 电子表格更改通知中获取更改的单元格的详细信息

javascript - 如何使用javascript删除文件?