Webアプリのサービスとして公開されているスクリプトがあり、その中に検索機能を構築しようとしています。sciptは、ユーザーがsearchBoxというテキストボックスに用語を入力し、[検索]をクリックして、その用語を含むスプレッドシートの行を表示できるようにすることを目的としています。
function searchClickHandler(e) {
var app = UiApp.getActiveApplication();
var searchResultPanel = app.getElementById('searchResultPanel');
var searchResultPane = app.getElementById('searchResultPane');
var searchCloseButton = app.getElementById('searchCloseButton');
var searchTerm = e.parameter.searchBox;
if (searchTerm.toString().length == 6) {
var searchList = ArrayLib.filterByText(dataValues, 1, searchTerm.toString());
var searchTrim = new Array();
for (var i = 0; i < searchList.length; i++) {
var searchTrim1 = searchList[i].slice(1, 6);
var searchTrim2 = searchList[i].slice(8, 10);
var searchTrim3 = searchList[i].slice(17, 19);
searchTrim.push(searchTrim1.concat(searchTrim2,searchTrim3));
}
}
その下にある場合は他にもいくつかあり、ハンドラーは結果を表示する必要がありますが、e.parameter.searchBoxは未定義で返されます。searchTermを手動で設定すると、スクリプトは正常に実行されます。
同じスクリプトの別のハンドラーでe.parameterを正常に使用しているので、このハンドラーで途方に暮れています。
前もって感謝します。