我正在寫一個小的谷歌應用程序腳本,它允許從開發人員列表中選擇幾個名稱。但在我的doPost(E)的方法,我不能訪問張貼值的數組(它undefinded),事件如果我檢查所有複選框...無法訪問事件發佈值
function onOpen() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
// add the new menu
var menuEntries = [];
menuEntries.push({name: "Edit page", functionName: "start"})
ss.addMenu("My tools", menuEntries);
}
function start() {
var app = UiApp.createApplication();
app.setTitle("Edit page");
var formPanel = app.createFormPanel();
var mainPanel = app.createVerticalPanel();
var gridPanel = app.createGrid(1, 2);
// developpers
var developperPanel = app.createVerticalPanel()
var developpers = [];
developpers.push("John", "Peter", "Max", "Johnny");
for (var i = 1; i < developpers.length; ++i) {
var checkbox = app.createCheckBox(developpers[i]).setName("dev"+i);
developperPanel.add(checkbox);
}
gridPanel.setWidget(0,0,app.createLabel("Developpers : "));
gridPanel.setWidget(0,1,developperPanel);
// submit button
mainPanel.add(gridPanel);
mainPanel.add(app.createSubmitButton().setText("OK"));
formPanel.add(mainPanel);
app.add(formPanel);
var ss = SpreadsheetApp.getActive();
ss.show(app);
}
function doPost(e) {
var app = UiApp.getActiveApplication();
app.add(app.createLabel(e.values[0])); // Here is the error.
return app;
}
在爲例,該列表是固定但在我的真實腳本中,我使用電子表格創建了列表。
感謝
最大
你有沒有試圖命名你的啓動函數'doGet'?我認爲這是強制性的... – 2012-07-12 09:42:48
是的,我試過了,但沒有奏效。但是,如果我打電話給'e.parameter.dev1',我可以訪問發送的值。 – Max 2012-07-12 09:48:40
對不起,我想我不明白你想要做什麼......你可以發佈你的'doPost(e)'函數嗎? – 2012-07-12 10:07:16