【问题标题】:GAS: GUI Builder, File Upload, Submit ButtonGAS:GUI Builder、文件上传、提交按钮
【发布时间】:2012-09-14 07:56:37
【问题描述】:

我已经在 stackoverflow 上阅读了这个问题的一些答案,但我无法让我的案例正常工作。

我在 GUI Builder 中有组件,并且代码在按下提交按钮后运行到函数 respondToSubmit,但文件名未定义。 fileName 是组件 File Upload 中 Input Fields 中 Name 的内容。任何想法有什么问题?

function respondToSubmit(e) {

  var app = UiApp.getActiveApplication();

  var fileBlob = e.parameter.fileName;

  throw(fileBlob); // fileBlob = undefined!!!

  return app;

}

最近的代码:

函数doPost(e) {

throw("doPost"); // 从不抛出,所以代码不会在这里运行!

var app = UiApp.getActiveApplication();

var fileBlob = e.parameter.FileUpload1;

返回应用程序;

}

【问题讨论】:

    标签: google-apps-script


    【解决方案1】:

    我认为您必须将您的标签、文本框和提交按钮都放在一个流程面板中,然后必须将其封装在一个表单面板中。我遇到了同样的问题,甚至是“意外错误”。我通过将所有这些元素放入流面板来解决它。

    【讨论】:

      【解决方案2】:

      有两种类型的按钮 - 一种是常规按钮,另一种是提交按钮(只能放置在表单面板上)

      1. 确保您使用的是提交按钮而不是常规按钮

      2. 当您使用提交按钮时,无需提供处理函数。提交按钮,默认情况下由一个名为 doPost(e) 的特殊函数处理。因此,编写一个 doPost 函数,您将能够使用文件名参数。

      FileUpload 小部件文档有一个很好的例子来说明如何做到这一点。

      【讨论】:

      • 我第一次尝试了这个解决方案,但我无法让代码在函数 doPost(e) 中运行 --> 遇到错误:发生意外错误。所以我在我的问题中尝试了它,但无法让我的案例正常工作。在 doPost-variation 中,函数代码与我的 respondToSubmit-variation 中的完全相同。在这两种情况下,我都使用了提交按钮并将其放置在表单面板中。我尝试将其作为网站脚本工作。还有什么建议吗?
      • 在respondToSubmit-variation中,代码至少在按下提交按钮后在函数中运行,所以稍微好一点! ;-)
      • 当您尝试访问未设置 ID 的 UI 元素时,通常会发生意外错误。您能否确保您尝试访问的所有 UI 元素的 ID 设置正确
      • 我想是的...在 Base 部分中,UI 元素将其默认值作为 ID 值:FileUpload1 和 SubmitButton1。我想知道的一件事是,当代码在 respondToSubmit 函数中时,是否真的可以像从另一个 UI 元素(在本例中是从 FileUpload 元素)中获取参数 e.parameter.fileName 一样。那么代码是否会搜索所有 UI 元素并尝试在某个元素中查找名为 fileName 的参数?
      • 所以这是我首先尝试的一步一步:我在 GUI builder 中添加了 FileUpload 和 SubmitButton 元素。元素的 ID:s 为它们的默认 ID:s:FileUpload1 和 SubmitButton1。我在 FileUpload 元素中定义为 Name 文件名。提交按钮被放置在表单面板上。我写了doPost函数,见上,希望在按下SubmitButton后代码会自动运行在那里-->代码没有在那里运行+遇到错误:发生了意外错误。我假设代码以某种方式从 FileUpload 元素中找到了文件名参数,所以我在 doGet() 中没有编写任何代码。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-07-20
      • 1970-01-01
      • 1970-01-01
      • 2020-10-28
      • 2013-09-16
      • 1970-01-01
      • 2018-03-25
      相关资源
      最近更新 更多