我正在尝试使用Google Apps脚本和HTML为Google表格创建搜索栏。本质上,我从表单(名称,日期和关键字)中获取用户的搜索输入,并将其传递到我的GScript文件中进行搜索。我想要一个索引数组,其中包含与搜索条件匹配的工作表的行。我知道该脚本的实际搜索部分有效;但是,将整数数组传递回HTML时出现了我的问题。
现在,有了它,以便在代码的HTML端初始化一个空数组并将其传递给GScript。它应该返回数组,然后检查数组的长度是否为空。但是,我收到一条错误消息:“无法从空读取属性“长度”。”
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异步运行或与此类似的东西吗?正确方向的任何指针或有关如何解决此问题的说明都将非常棒:)谢谢!
答案 0 :(得分:0)
编辑:非常简单的修复,仅添加了withSuccessHandler()标记
if(checkValidSearch(responsible, datefrom, dateto, description)) {
google.script.run.withSuccessHandler(createTable).basicSearch(responsible, datefrom, dateto, description, searchRowMatch);
}