如何从 Google Sheets Data 继承 HTML 到 Google WebApp?
How to inherit HTML to Google WebApp from Google Sheets Data?
我想继承 HTML 从 Google 工作表数据到 Google 网络应用程序输出的设计,我尝试使用 innerHTML 但我不知道在哪里在代码中准确应用它。
下面的示例屏幕截图代码,我想在 google 网络应用程序
中添加单词 General
Code.gs
function doGet(e) {
var htmlOutput = HtmlService.createTemplateFromFile('DisplaySheet');
return htmlOutput.evaluate();
}
function getSheetData() {
var ss= SpreadsheetApp.getActiveSpreadsheet();
var dataSheet = ss.getSheetByName('Data');
var dataRange = dataSheet.getDataRange();
var dataValues = dataRange.getValues();
return dataValues;
}
DisplaySheet.html
<!DOCTYPE html>
<html>
<head>
<base target="_top">
</head>
<body>
<h1>Display Google Sheet Web App</h1>
<table border="1" cellpadding="5px" >
<?var tableData = getSheetData();?>
<?for(var i = 0; i < tableData.length; i++) { ?>
<?if(i == 0) { ?>
<tr>
<?for(var j = 0; j < tableData[i].length; j++) { ?>
<th><?= tableData[i][j] ?></th>
<? } ?>
</tr>
<? } else { ?>
<tr>
<?for(var j = 0; j < tableData[i].length; j++) { ?>
<td><?= tableData[i][j] ?></td>
<? } ?>
</tr>
<? } ?>
<? } ?>
</table>
</body>
</html>
输出
解法:
您需要使用强制打印 scriptlet,它不会将字符串包含在隐藏的转义字符中,以允许 HTML 格式化。
在您的 DisplaySheet.html 中,使用 <?!=
标签代替 <?=
:
<td><?!= tableData[i][j] ?></td>
样本:
参考文献:
我想继承 HTML 从 Google 工作表数据到 Google 网络应用程序输出的设计,我尝试使用 innerHTML 但我不知道在哪里在代码中准确应用它。
下面的示例屏幕截图代码,我想在 google 网络应用程序
中添加单词 GeneralCode.gs
function doGet(e) {
var htmlOutput = HtmlService.createTemplateFromFile('DisplaySheet');
return htmlOutput.evaluate();
}
function getSheetData() {
var ss= SpreadsheetApp.getActiveSpreadsheet();
var dataSheet = ss.getSheetByName('Data');
var dataRange = dataSheet.getDataRange();
var dataValues = dataRange.getValues();
return dataValues;
}
DisplaySheet.html
<!DOCTYPE html>
<html>
<head>
<base target="_top">
</head>
<body>
<h1>Display Google Sheet Web App</h1>
<table border="1" cellpadding="5px" >
<?var tableData = getSheetData();?>
<?for(var i = 0; i < tableData.length; i++) { ?>
<?if(i == 0) { ?>
<tr>
<?for(var j = 0; j < tableData[i].length; j++) { ?>
<th><?= tableData[i][j] ?></th>
<? } ?>
</tr>
<? } else { ?>
<tr>
<?for(var j = 0; j < tableData[i].length; j++) { ?>
<td><?= tableData[i][j] ?></td>
<? } ?>
</tr>
<? } ?>
<? } ?>
</table>
</body>
</html>
输出
解法:
您需要使用强制打印 scriptlet,它不会将字符串包含在隐藏的转义字符中,以允许 HTML 格式化。
在您的 DisplaySheet.html 中,使用 <?!=
标签代替 <?=
:
<td><?!= tableData[i][j] ?></td>
样本:
参考文献: