html - 在 HTML 和 Google Apps 脚本之间传递和返回数组
问题描述
我正在尝试使用 Google Apps 脚本和 HTML 为 Google 表格创建搜索栏。本质上,我从表单中获取用户的搜索输入(姓名、日期和关键字)并将其传递给我的 GScript 文件以进行搜索。我想要一个索引数组,其中包含与搜索条件匹配的工作表行。我知道脚本的实际搜索部分有效;但是,当将整数数组传递回 HTML 时,我的问题就出现了。
现在,我拥有它,以便在代码的 HTML 端初始化一个空数组并将其传递给 GScript。它应该返回数组,然后我检查数组的长度是否为空。但是,我收到一条错误消息:“无法从 null 读取属性“长度”。”
function gatherSearch() {
clearErrorWarnings();
var responsible = document.getElementById('responsible').value;
var datefrom = formatDate(document.getElementById('datefrom').value);
var dateto = formatDate(document.getElementById('dateto').value);
var description = document.getElementById('description').value;
var searchRowMatch = [];
if(checkValidSearch(responsible, datefrom, dateto, description)) {
searchRowMatch = google.script.run.basicSearch(responsible, datefrom, dateto, description, searchRowMatch);
if(searchRowMatch.length == 0) {
noSearchMatch();
}
}
}
我知道 GScript 与 HTML 或类似的东西异步运行有什么问题?任何指向正确方向的指针或有关如何解决此问题的解释都会很棒:) 谢谢!
解决方案
编辑:非常简单的修复,只是添加了 withSuccessHandler() 标记
if(checkValidSearch(responsible, datefrom, dateto, description)) {
google.script.run.withSuccessHandler(createTable).basicSearch(responsible, datefrom, dateto, description, searchRowMatch);
}
推荐阅读
- git - 强制 docker 根据 git repo 的最新提交来重建层
- bash - Bash - 不带小数点的回显百分比,结果从 bc 命令返回
- javascript - 为什么我不能解决 Omdb 承诺?
- react-native - 如何使下划线标签位置居中?
- php - 管理员创建帖子时 CPU 和 RAM 已满
- android - 如何从 recyclerView 适配器中检测回收,以便在回收之前执行操作?
- javascript - 无法使用 Renderer2 更改使用 ViewChild 引用的按钮的属性
- python - 无法运行 SVC 没有错误,但它只是卡住了,有什么办法可以超时吗?
- python-2.7 - 如何在python unittest中检查断言空字符串?
- typescript - typescript/raven.d.ts,行:205 在离子中安装 npm 时找不到名称“未知”