工作表/应用程序脚本代码我的工作:
https://docs.google.com/spreadsheets/d/117Qv89zyKjlUqR_IAb_GJxdJwo64xZ9yiPOTm73baUU/edit#gid=0
https://script.google.com/u/0/home/projects/1g3RRz1kK6CM4PoW55A_O1Fzo-llbUq0M61WNiuKaftFIGRYYrf89vDF1/edit
我正在循环将给定范围内的所有行放入HTML表中,然后放入电子邮件中。我以前只使用应用程序脚本完成过此操作,但现在我厌倦了学习严格从HTML文件开始工作,因为它更干净、更可读。我将此应用程序脚本循环:
for (var i = 0; i < data.length; i++) {
cells = data[i];
table = table + "<tr>";
for (var u = 0; u < cells.length; u++) {
table = table + `<td style="background-color:${backgrounds[i][u]};height:40px;width:100px;text-align:center;font-family:Oswald">` + cells[u] + "</td>";
}
}
转换成这个HTML
<tbody>
<? for (var i = 0; i < tableRangeValues.length; i++){
cells = tableRangeValues[i];
for (var u = 0; u < cells.length; u++) {
?>
<!-- each td is a column -->
<tr>
<td style= "background-color:<?= backgrounds[i][u]?>;height:40px;width:100px;text-align:center;font-family:Oswald"><?= cells[0] ?></td>
<td style= "background-color:<?= backgrounds[i][u]?>;height:40px;width:100px;text-align:center;font-family:Oswald"><?= cells[1] ?></td>
<td style= "background-color:<?= backgrounds[i][u]?>;height:40px;width:100px;text-align:center;font-family:Oswald"><?= cells[2] ?></td>
<td style= "background-color:<?= backgrounds[i][u]?>;height:40px;width:100px;text-align:center;font-family:Oswald"><?= cells[3] ?></td>
</tr>
<?} } ?>
</tbody>
问题在于对于(varu = 0;u〈细胞长度;u++),因为该行有4个单元格,这就解释了为什么每行在执行时重复4次。像我提到的应用程序脚本中的相同代码没有重复返回行,所以我假设这是一个语法错误,我在html上做了。
我只想让循环给予一次行,这是我一直在使用之前,它的工作很好,除了它不返回谷歌工作表上的单元格颜色在表中返回的HTML在电子邮件中。
<tbody>
<? for (var i = 0; i < tableRangeValues.length; i++) {row = tableRangeValues[i];?>
<tr>
<td><?= row[0] ?></td>
<td><?= row[1] ?></td>
<td><?= row[2] ?></td>
<td><?= row[3] ?></td>
</tr>
<?} ?>
</tbody>
“u”循环是我如何得到每个单元格的颜色,但据我所知,u循环也会导致每个单元格重复一行。我无法找出我的synnax错误。
任何反馈是赞赏,我还在学习html和使用javascript函数内
1条答案
按热度按时间hgc7kmma1#
您可以将循环拆分为多个scriptlet