javascript - 谷歌应用脚本,将对象从服务器发送到 HTML 模板和 javascript
问题描述
我正在从.gs代码向我的 page.html 发送一个数组数组没有机会。
我究竟做错了什么?
.GS 代码 doget()
var htmlTemplate = HtmlService.createTemplateFromFile('Index');
htmlTemplate.colors = colors;
htmlTemplate.jobs = extractDataFromSheet(approvedReal); <-- I can use in html
htmlTemplate.admin = adminFound;
htmlTemplate.approved = approvedReal;
return htmlTemplate.evaluate();
HTML 没问题,我可以根据需要构建我的 HTML 页面:
<? for(var row=0;row<jobs.length;row++){
var current = jobs[row];?>
<div class='row no-gutters'>
<?for(var col=0;col<current.length;col++){
var singleJob = current[col];
... so on
但是,如果我尝试将值放在 javascript var 中,则只获取字符串
<script>
var approved = <?= approvati ?>;
var newPostit = false;
var jobs0 = <?= JSON.stringify(jobs) ?>; <--see image-1
var jobs1 = <?= JSON.parse(jobs ) ?>; <--see image-2
........
解决方案
有 3 种类型的脚本:
- 标准::
<?..?>
没有输出到 html - 打印:
<?=..?>
: 输出数据,但将其转义以避免 xss 攻击 - 强制打印:
<?!=..?>
:按原样输出数据。
由于传递的数据是 json,因此您应该使用强制打印脚本。
推荐阅读
- r - 嵌套 lapply 与 R 中的替代品
- python - 如何将默认的发光选择边框添加到自定义 QWidget?
- junit - 如何在 JUnit 5 中模拟静态方法
- vmware - 带有虚拟机版本 8 的 CentOS 7
- perl - 如何在多行事件中提取特定字符串值
- html - Bootstrap 4,根据我们在第一列滚动的位置更改第二列内容
- php - 使用文本框中的参数调用 php
- bitmap - 如何将mipmap数据变成位图?
- c# - 自定义身份验证类型的登录页面设计:个人用户帐户 ASP.NET core 2.1、MVC、c#
- python - 如何调试“FileNotFoundError: [WinError 2] 系统找不到指定的文件”?