我有一个看起来像这样的代码。
代码
function doGet(e) {
var t = HtmlService.createTemplateFromFile('Index');
var matgrp = e.parameter.matgrp;
t.dataFromServerTemplate = {first: matgrp};
t.data = SpreadsheetApp
.openById('1231455566776fgfgggggggg')
.getActiveSheet()
.getDataRange()
.getValues();
return t.evaluate();
}
请专注于这一部分。
var matgrp = e.parameter.matgrp; t.dataFromServerTemplate = {first: matgrp};
这是index.html
<!DOCTYPE html>
<script>
var data = <?!= JSON.stringify(dataFromServerTemplate) ?>; //Stores the data directly in the javascript code
function initialize() {
document.getElementById("myTitle").innerText = data.first;
}
window.onload = initialize;
</script>
<html>
<head>
<base target="_top">
<style>
table,th,td
{
border:1px solid #ddd; font-family:tahoma;font-size: 10px
}
</style>
</head>
<body>
<H2 id="myTitle"></H2>
<table cellspacing="0" cellpadding="3" height ="100%" width ="60%" align = "center">
<th>Item Code</th>
<th>Product Name</th>
<th>Main Description</th>
<th>Other Description</th>
<? for (var i = 2; i < data.length; i++) { ?>
<tr>
<? if(data[i][13] == "Wall Fan") {?>
<td><?= data[i][1] ?></td>
<td><?= data[i][2] ?></td>
<td><?= data[i][3] ?></td>
<td><?= data[i][4] ?></td>
<? }else{ ?>
<?}?>
<? } ?>
</tr>
</table>
</body>
</html>
正如您在函数上方的代码中看到的那样,initialize从
code.gs
获取数据并将其显示在标头中。 <H2 id="myTitle"></H2>
我的问题是如何在此代码行中传递值?<table cellspacing="0" cellpadding="3" height ="100%" width ="60%" align = "center">
<th>Item Code</th>
<th>Product Name</th>
<th>Main Description</th>
<th>Other Description</th>
<? for (var i = 2; i < data.length; i++) { ?>
<tr>
<? if(data[i][13] == "This is where I need to put the data") {?>
<td><?= data[i][1] ?></td>
<td><?= data[i][2] ?></td>
<td><?= data[i][3] ?></td>
<td><?= data[i][4] ?></td>
<? }else{ ?>
<?}?>
<? } ?>
</tr>
</table>
这是我的最后一个问题,我不知道如何通过。我这样做的原因是使用该值基于条件创建表。
TYSM寻求帮助
最佳答案
更改
<? if(data[i][13] == "This is where I need to put the data") {?>
至
<? if(data[i][13] == dataFromServerTemplate.first) {?>