爲僱主開展一個相當直接的項目。我需要一份調查表格,在提交時會將答案轉儲到電子表格中。我正在使用獨立應用上的Google Apps腳本。項目管理決定反對谷歌表格。無法遍歷Google Apps腳本中的單選按鈕值
我遇到問題是檢索單選按鈕值。有許多單選按鈕問題,我需要能夠遍歷它們以獲取它們的值。
用戶界面是通過氣的了UiApp服務做到:用於創建單選按鈕組
function doGet(e){
var app = UiApp.createApplication();
// set up the form
var form = app.createFormPanel();
var flow = app.createFlowPanel();
form.add(flow);
app.add(form);
// create the radio button groups (they are all Likert scales).
// I've written a function that creates a single group (see below)
for (var i=0; i<24; i++){
likertScale(i, flow);
};
flow.add(app.createSubmitButton('Submit')
return app;
}
我李克特量表()函數:
function likertScale(name, flow) {
// the 'name' argument allows me to pass in the var i from the
// for loop above to give each radio button group a unique name
// the 'flow' argument allows me to pass in the var flow that
// I created when setting up the form
var app = UiApp.getActiveApplication();
// create the N/A option, assign the group's name, give the button a label
// and a value
flow.add(app.createRadioButton('item'+name, 'N/A').setFormValue('NA'));
for (var j=1; j<6; j++) {
// create the 5-point Likert scale; assign the group's name to each button,
// use j to give each a label and a value
flow.add(app.createRadioButton('item'+name,j).setFormValue(j);
}
return app;
}
爲了測試檢索值的前提下,我添加標籤的文本包含應用程序的值。該函數的相關部分:
function doPost(e) {
var app = UiApp.getActiveApplication();
for (var i=0; i<24; i++){
var radio = 'item'+i;
// I've previously set the name of each radio button group
// as 'item#', where # is a number 0-23.
app.add(app.createLabel().setText('You selected ' + e.parameter.radio));
// The idea is that each iteration recreates the name of a radio
// button, then uses that name to inform e.parameter.radio
};
return app;
}
什麼是真正困惑對我來說是同時上面的代碼中吐出「您選擇了不確定的」 24倍,下面的代碼完全工作:
function doPost(e) {
var app = UiApp.getActiveApplication();
app.add(app.createLabel().setText('You selected ' + e.parameter.item0
return app;
}
看來,只要我不嘗試任何循環,而且我手工編碼整個事情,一切都很好。
對此有何見解?
任何人試圖重現這將需要編寫一個用戶界面,猜測你有什麼。您可以通過提供重現問題所需的所有(最小)代碼來幫助解決問題。 – Mogsdad 2014-12-04 20:19:33
這沒問題。 – ishmael624 2014-12-04 20:24:59