Google Apps 脚本将参数传递给 google.script.run

Google Apps Script passing parameter to google.script.run

无法将参数从 Page.html 文件传递​​到 google.script.run 函数

<input type="button" value="Load Norm"
onclick="google.script.run
      .loadNormFromSidebar('10A')" />

然后我希望将 10A 作为我的 loadNormFromSidebar 函数的参数:

function loadNormFromSidebar(normNr) {
  Logger.log(normNr);
  var jobNr = params.getDescriptionSheet().getRange(params.jobNrCell).getValue();
  normNr=jobNr+'-'+normNr;
  loadNormWithNr(normNr);
}

知道为什么 normNr 没有从 html 传递到 gs 吗? 日志输出文件为空。

我无法重现问题。在我的测试中,一切都按预期工作。

Index.html

<html>
  <body>
    <input type="button"
           value="Load Norm"
           onclick="google.script.run.loadNormFromSidebar('10A')" />
  </body>
</html>

Code.gs

function doGet(e) {
  var template = HtmlService.createTemplateFromFile('Index');

  return template.evaluate()
      .setTitle('Web App Window Title')
      .setSandboxMode(HtmlService.SandboxMode.IFRAME);
}

function loadNormFromSidebar(normNr) {
  Logger.log(normNr);
  /*
  var jobNr = params.getDescriptionSheet().getRange(params.jobNrCell).getValue();
  normNr=jobNr+'-'+normNr;
  loadNormWithNr(normNr);
  */
}

查看 -> 日志

您是否创建了新版本的应用程序并发布了该版本?

发现错误。上面的代码是库 Estimating 的一部分。在本地文件中我有

function loadNormFromSidebar() {
  Estimating.loadNormFrimSidebar()
}

应该在哪里

function loadNormFromSidebar(normNr) {
  Estimating.loadNormFrimSidebar(normNr)
}