谷歌应用脚​​本文本框值未传递给 e.parameter.TextBoxName

2023-12-01

在下面的代码中,我定义了一个带有名称和 ID 的文本框。按钮处理程序工作正常,但我无法获取在文本框中输入的值。 msgBox 出现了,但是e.parameter.matchValue显示为undefined.

在应用程序的其他部分,我有相同的逻辑,但使用列表框并且工作正常。

我究竟做错了什么?

function chooseColumnValueToMatch() {
  var app = UiApp.createApplication().setHeight(150).setWidth(250);
  var ss = SpreadsheetApp.getActiveSpreadsheet();

  var columnName = ScriptProperties.getProperty("columnNameToMatch");

  var h1Line = app.createHTML("<h2>Value to match "+columnName+":</h2>");
  var textPara = app.createHTML("<p>Type the VALUE that the <b>"+columnName+"</b> column must match EXACTLY to send the message.</p>");
  var selectionHandler = app.createServerHandler('chooseColumnValueToMatchSelectionHandler');
  var valueInputBox = app.createTextBox()
      .setTitle("Match value for "+columnName)
      .setName("matchValue")
      .setId("matchValue");
  var submitBtn = app.createButton("Submit", selectionHandler);

  app.add(h1Line)
    .add(textPara)
    .add(valueInputBox)
    .add(submitBtn);
  ss.show(app);
}
function chooseColumnValueToMatchSelectionHandler(e){
  var app = UiApp.getActiveApplication();
  var columnName = ScriptProperties.getProperty("columnNameToMatch");

  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var msg = e.parameter.matchValue;

  Browser.msgBox("Value to match "+columnName+" column is:", msg, Browser.Buttons.OK);

  return app;
}

你必须使用ServerHandler.addCallbackElement方法。下面的代码演示了它。该方法调用“告诉”GAS 内部,作为参数指向的小部件的值应该传递给处理程序。

如果您有多个小部件,它们应该由处理程序处理,那么,不要调用addCallbackElement对于每个小部件,都可以将所有控件放置到面板上,并仅将面板指向addCallbackElement方法参数。代码在本教程的第4.4点显示这样。

function doGet(e) {
  var app = UiApp.createApplication();
  var valueInputBox = app.createTextBox()
      .setTitle("Match value for XXX")
      .setName("matchValue")
      .setId("matchValue");
  var selectionHandler = app.createServerHandler('chooseColumnValueToMatchSelectionHandler');
  selectionHandler.addCallbackElement(valueInputBox);
  var submitBtn = app.createButton("Submit", selectionHandler);
  var output = app.createLabel().setId("output"); 
  app.add(valueInputBox).add(submitBtn).add(output);  
  return app;
}

function chooseColumnValueToMatchSelectionHandler(e){
  var app = UiApp.getActiveApplication();
  var output = app.getElementById("output");

  var msg = e.parameter.matchValue;

  output.setText("Value to match XXXX column is: " + msg);

  return app;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

谷歌应用脚​​本文本框值未传递给 e.parameter.TextBoxName 的相关文章

  • window.location.href = window.location.href 返回空白页

    我正在使用 Google App Script 创建一个网页 单击按钮后 我尝试重新加载页面 但以下操作均无效 窗口 位置 href 窗口 位置 href window location reload true 他们正在重定向到空白页面 下
  • 谷歌表格在一行上的不同单元格范围上添加时间戳

    我一直试图在与该行上两个不同单元格范围相对应的行上放置两个时间戳 我已成功使用此脚本对行上的任何更改 第 5 列之后 添加时间戳 我想要的是 如果单元格范围 F 到 L 发生任何更改 则在 E 列中放置一个时间戳 然后 如果从 N 列到 Z
  • 从 Google 电子表格中的列填充 HTML 下拉菜单

    我是 gs 的新手 所以这应该不难 我有一个 Google 电子表格 其中一列中有值 假设 A 列 我使用 gs 创建了一个自定义菜单 用户将在其中选择一个选项 单击其中一个选项 新组件 将出现一个弹出窗口 其中包含一个下拉菜单 用户应从其
  • 向文档添加动态页眉/页脚

    我想知道是否有一种方法可以向文档添加动态页眉或页脚 即在页脚中添加每个页面都不同的 页面标题 据我所知 编辑内置页眉或页脚将反映在每个页面上 我想知道是否有人想到了一种解决方法 通过访问页面上的第一行 最后一行并在那里插入文本来 强制 它
  • 如何将值传递到 HTML 模板侧边栏?

    我的任务是更换一些现有的 Access 数据库 我想知道你们是否可以帮助我 目前 我有一个谷歌表格 https docs google com spreadsheets d 1JS5Iwx60Zk7VL8lYz6Yj7ew4eYPhl2Nk
  • Google Apps 脚本触发器 - 每当将新文件添加到文件夹时运行

    我想在任何时候执行谷歌应用程序脚本new文件被添加到特定文件夹 目前 我使用的是每 x 分钟运行一次的时钟触发器 但我只需要在向文件夹添加文件时运行脚本 有没有办法做到这一点 与this https stackoverflow com qu
  • 将 html 嵌入 google 工作表

    我想通过创建一个 html 元素并将其放在电子表格顶部来在电子表格顶部显示 HTML 例如 如果我通过合并 A1 G5 在工作表顶部创建了一个大单元格 是否可以在其中嵌入 html div h1 Hello World h1 div 我注意
  • 测量填写部分的时间 - 谷歌表单

    我正在尝试使用谷歌表单进行研究调查问卷 对于某些部分 我想自动测量用户填写所需的时间 谷歌表单中没有这样的选项 我尝试复制表单源 并用 javascript 填充时间 但它不起作用 跨源问题 未能成功托管复制的表单 如何做到 我如何衡量回答
  • Google 脚本过滤一个值的范围

    我想过滤第 1 列中仅包含 Bob 特定值的行的 google 工作表范围 到目前为止 我的代码允许我过滤out第 1 列中有 Bob 的行 我需要相反 我想返回第 1 列中只有 Bob 的行 因此 其中 filterSettings 不是
  • Google Apps 脚本自动生成的库文档

    我目前正在开发一个 Google Apps 脚本库 它基本上将电子表格视为数据库对象 目前 该库有两个相同的功能 例如 Opens and creates a query object for a spreadsheet with the
  • 使用 Gmail Apps 脚本以 HTML 和普通格式发送电子邮件

    我正在使用 Google Apps 脚本为 Gmail 编写一个自动回复机器人 http script google com http script google com 每次我使用GmailThread s Reply https dev
  • 如果您有多个表单向单个电子表格发送响应,Google 如何知道提交表单时要执行哪个 onsubmit 触发器

    我需要有人澄清 据我了解 多个表单可以将其回复发送到新 Google 表格中的单个电子表格 因此 我创建了两个 Google 表单 并让他们都将回复发送到新的 Google 电子表格 然后我在电子表格 而不是表单 中创建了两个脚本 每个脚本
  • 如何使用脚本格式化 Google 文档中的文本

    我想编写一个脚本来查找所有特定单词并格式化它们的颜色 我尝试了以下操作 但似乎不起作用 function ChangeColor var body DocumentApp getActiveDocument getBody var mywo
  • javascript 对象是否像 Ruby 一样“开放”?

    在 Ruby 中 我可以使用与声明自己的语法相同的语法来添加和修改任何类 对象或方法的功能 因为 Ruby 有 开放类 JavaScript 是这样的吗 举个例子 就我而言 我想更改 Google Apps 脚本处理 URL 对象的方式 以
  • 仅生成一张电子表格的 PDF

    我需要一个只用一张电子表格创建 PDF 的脚本 我目前有一个生成 PDF 的脚本 但它处理整个文件 我无法将这些值复制到另一个文件 因为我需要导出的工作表是带有从另一个工作表中提取的数据的图形 你可以帮帮我吗 谢谢 function myF
  • 通过 Google Apps 脚本发送电子邮件时出现问题

    我有时已经成功地通过 Google Apps 脚本发送电子邮件 但是 当我打开一个新的 Google Workspace 帐户并使用相同的代码将相同的内容发送到同一个接收者时 新帐户不起作用 我收到一条 消息已被阻止 的消息 电子邮件受保护
  • 上传到google脚本中的特定文件夹

    所以我想制作一个表单 将文件 照片 视频上传到 Google Drive 中的特定文件夹 文件 照片 视频 但我不知道如何在 Google Apps 脚本中制作 我尝试了这样的操作 并在控制台中出现错误 无效的参数侦听器 所以这里有一个索引
  • Google 表单根据提交的值将文件上传到特定的新文件夹

    我的表单有 2 个字段 假设表单的名称是CV Drops Name 上传文件按钮 因此 默认情况下 当人们上传文件时 它将保存在我的 Google Drive 文件夹下CV Drops 我想要的是根据字段中的输入将文件放置在子文件夹中NAM
  • 如果单元格包含“否”,则隐藏 Google 表格中的行 - 多张表格

    我正在运行 1 个主电子表格 其中有 4 个产品特定电子表格从中提取信息 如果没有提取相关信息 较小的电子表格将在所有单元格中显示 否 我希望隐藏带有 否 的行 我已经把一些东西拼凑在一起了 这样的作品 但我无法让它在所有 4 张纸上都工作
  • 如何(从 Google 电子表格)获取链接表单的 ID

    我有一个 Google 电子表格 其中链接了一个表单 并且存储了所有表单响应 我想要查找的是表单本身的 ID 我尝试过这个 但这不起作用 我正在表单链接到的电子表格中的脚本编辑器中运行以下代码 function getID var form

随机推荐

  • Android-Boot Completed 在 Broadcastreceiver 中不起作用

    我正在使用 android 版本 4 1 1 MeLE box SmartTv 来开发一个应用程序 我需要在设备启动时间完成时启动我的应用程序 但我的设备无法赶上 BOOT COMPLETED 操作 如果我在手机或模拟器中使用相同的应用程序
  • Python3 f 字符串:如何避免转义文字大括号?

    有没有办法避免在 python3 中转义大括号字符f string 例如 如果你想输出一个 json 字符串或一大块 CSS 规则 那么必须转换所有的内容确实很不方便 and 字符到 and 如果您想使用 f 字符串语法 我知道可以使用旧的
  • 当作业在 Databricks 中运行时,如何获取作业名称。这不是基于笔记本的工作

    我正在尝试获取正在运行的作业的名称 我想获取姓名并发送消息 示例 我将作业部署到 databricks 并运行它 我希望这个作业在松弛时发送带有作业名称的消息 这就是为什么我想获取当前作业的名称 Databricks 通过以下方式公开大量信
  • 主线程检查器:在后台线程上调用的 UI API:-[UIApplication applicationState]

    我在 Xcode 9 beta iOS 11 中使用谷歌地图 我收到输出到日志的错误 如下所示 主线程检查器 在后台线程上调用的 UI API UIApplication applicationState PID 4442 TID 8378
  • 更改 std::map 内元素的键的最快方法是什么

    我理解为什么不能这样做的原因 重新平衡之类的 iterator i m find 33 if i m end i gt first 22 但到目前为止 更改键的唯一方法 我知道 是从树中删除节点 然后使用不同的键将值插入回来 iterato
  • 如何为所有列设置 AND 条件 - php

    In MY TABLE如果我输入 floor fly 表返回No matching records因为全球搜索php 函数搜索单个列内的记录 但我希望 AND 条件适用于所有列 如果我输入floor fly表应该显示如下内容 Column1
  • 按类名划分的 JavaFX 样式

    也许是一个基本问题 但是是否可以在 JavaFX 中通过类名设置表元素的样式 例如这样 MyClassname table view column header label fx text fill F00 我希望它可以在 1 个样式表中设
  • 可以从Javascript文件访问MVC ViewBag对象吗?

    是否可以从 MVC 应用程序中的 javascript 文件执行以下操作 function alert ViewBag someValue 目前它抛出错误 引用未定义的 XML 名称 ViewBag 我不认为目前有任何方法可以做到这一点 R
  • Git Clone 在 Azure 命令行任务中生成错误

    在我的 Azure DevOps CD 管道中 我添加了一个克隆 Git 存储库的命令行任务 克隆已成功完成 但日志中出现错误 奇怪的行为是克隆与 Azure 托管代理完美配合 例如vs2017 win2016 or Windows 201
  • 如何从 Azure AD B2C 身份验证获取电子邮件地址?

    我正在尝试让 Azure AD B2C 获取用户电子邮件地址 但我在提供该地址的令牌中看不到任何内容 即使我的登录 注册策略对用户电子邮件地址进行了 声明 我如何获得电子邮件地址 更一般地说 除了示例之外 是否有任何文档可以解释此服务的工作
  • 使用 prxmatch 匹配以某个字符结尾的字符串

    匹配以某个字符结尾的字符串 我正在尝试创建一个新变量 该变量指示字符串是否以某个字符结尾 下面是我尝试过的 但是当运行此代码时 变量ending in e全为零 我希望像 Alice 和 Jane 这样的名字会与下面的代码匹配 但它们不是
  • 结构体中零长度数组的用途是什么? [复制]

    这个问题在这里已经有答案了 当我查看Linux内核代码时 发现了以下代码 struct thread info struct task struct task struct exec domain exec domain unsigned
  • 如果 isNaN,如何将变量的内容更改为零 [重复]

    这个问题在这里已经有答案了 可能的重复 当我按 Enter 时 我得到 isNaN 但该值是一个数字 我上周日交了作业 它被发回给我进行更正 因为 isNaN 值返回到 Total 文本框 我认为这就是编程要做的事情 相反 根据她的说法 i
  • 在 Seaborn 箱线图中获取值

    我想通过 Seaborn 中生成的箱线图获取具体值 即媒体 四分位数 例如 在下面的箱线图中 来源 link 有没有办法获取媒体和四分位数而不是手动估计 import numpy as np import seaborn as sns sn
  • 打印文件中的每 n 行

    我正在尝试打印每个n文件中的第 3 行 但是n不是常量而是变量 例如 我想替换sed n 1 5p 与类似的东西sed n 1 i p 这可能吗 awk还可以用更优雅的方式做到这一点 awk v n YOUR NUM NR n 1 file
  • Kubelet 使用什么来确定节点的临时存储容量?

    我在虚拟机上运行 Kubernetes 集群 安装座的简要概述如下 df h Filesystem Size Used Avail Use Mounted on dev sda1 20G 4 5G 15G 24 dev mapper vg0
  • pandas read_csv 最后一列包含逗号

    所以我有一个 csv 数据集 根据我的书 该数据集格式良好 并且我正在尝试获取pandas包以正确加载它 标题由 5 个列名组成 但最后一列由包含未转义逗号的 JSON 对象组成 例如 A B C D E 1 2 3 4 K1 V1 K2
  • 是否有更简单(且仍然高性能)的方法来通过最近邻重采样来升级画布渲染?

    我对这个看似简单的以最近邻格式升级画布渲染的任务感到有点困惑 我在这里问 如何在 JS 中正确编写这个着色器函数 目标是像这样转换 3D 渲染输出 像这样的像素艺术 但在这个问题中我问的是如何实施我选择的解决方案 本质上使用着色器来处理放大
  • 如何使用“getOwnPropertyNames”迭代地图的内容

    我在代码部分下面发布了地图 我向地图添加了一些值 如图所示 但是当我尝试使用显示地图的内容时 getOwnPropertyNames 如代码所示 循环中的日志语句不显示任何内容 请让我知道如何正确使用 getOwnPropertyNames
  • 谷歌应用脚​​本文本框值未传递给 e.parameter.TextBoxName

    在下面的代码中 我定义了一个带有名称和 ID 的文本框 按钮处理程序工作正常 但我无法获取在文本框中输入的值 msgBox 出现了 但是e parameter matchValue显示为undefined 在应用程序的其他部分 我有相同的逻