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

Google Apps Script中HTML调用JS函数返回值显示undefined问题求解

问题原因

google.script.run 是Google Apps Script提供的客户端调用服务端函数的异步接口,本身无返回值,服务端函数的执行结果只能通过回调方法接收,你之前直接把调用结果赋值给变量,拿到的自然是undefined。

修复方案

1. 修改客户端脚本代码

<script>
function displayActiveDate(){
  google.script.run
    // 服务端函数执行成功的回调,入参就是getActiveDate的返回值
    .withSuccessHandler(activeDate => {
      document.getElementById("deliveryDate").value = activeDate;
    })
    // 可选的错误回调,方便后续排查异常
    .withFailureHandler(err => {
      console.error("获取日期出错:", err);
    })
    // 最后写要调用的服务端函数名
    .getActiveDate();
}
</script>

2. 优化触发逻辑(可选)

你现在用的onmousemove触发会导致函数反复执行,更合理的预填充方案是页面加载完成后自动触发:

  • 输入框代码可以移除触发事件:
<input type="text" id="deliveryDate" name="deliveryDate">
  • 在页面body标签添加加载完成触发的事件:
<body onload="displayActiveDate()">

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 15:15:03