You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Apps Script模板渲染异常:无法显示Google Sheet员工姓名

解决Google Apps Script模板变量不渲染问题

问题原因

你遇到的问题有两个核心原因:

  1. HTML模板中的变量标签被HTML实体转义,导致模板引擎无法解析,直接显示原始字符串;
  2. isLoggedIn()函数固定返回false,程序永远不会加载firstForm.html,而是跳转登录页,因此即使修复标签也无法看到效果。

解决方案

1. 修复HTML模板的变量标签

在firstForm.html中,将input的value属性里的转义实体&lt;?!= employeeName ?&gt;替换为Google Apps Script模板支持的原始标签<?!= employeeName ?>:

修改后的代码片段:

<div class="mb-1" style="display: flex; align-items: center;">
  <div class="table-divider" style="border-top: 1px solid #000;"></div>
  <label for="name" class="form-label" style="flex: 0 0 150px;">Employee Name:</label>
  <input type="text" id="name" name="name" class="form-control form-control-sm" style="flex: 1;" value="<?!= employeeName ?>" disabled required>
</div>
  • 说明:<?!= ?>是Google Apps Script的不转义输出标签,适合直接将变量值插入HTML属性或文本中;如果员工姓名可能包含特殊HTML字符,也可以用<?= ?>(自动转义实体),确保页面安全。

2. 修复登录判断逻辑

当前isLoggedIn()函数返回false,导致程序始终加载loginPage.html。测试阶段可以先将其改为返回true,验证姓名渲染效果,后续再替换为实际的登录验证逻辑(比如检查用户会话、Google账号权限等):

修改后的isLoggedIn()函数:

function isLoggedIn() {
  return true; // 测试用,后续替换为真实登录验证逻辑
}

验证步骤

  1. 保存修改后的Code.gs和firstForm.html;
  2. 重新部署Web应用(注意选择新版本,且部署权限设置正确);
  3. 访问Web应用,此时应该能看到Google Sheet中H2单元格的员工姓名正确显示在输入框中。

内容的提问来源于stack exchange,提问作者Hershey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 00:37:43