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

时间:2015-04-16 16:38:59

标签: javascript google-apps-script

无法将参数从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的任何想法? 日志输出文件为空。

2 个答案:

答案 0 :(得分:0)

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

<强>的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);
  */
}

查看 - &gt;日志

enter image description here

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

答案 1 :(得分:0)

发现错误。上面的代码是图书馆估算的一部分。在本地文件中我有

function loadNormFromSidebar() {
  Estimating.loadNormFrimSidebar()
}

应该在哪里

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