0
我想在.setName(chk_id)的情況下獲取複選框的輸入值(true/false),當id是id時我已經在flexTable cell bycell中引入了這一行。 但我總是得到「e.parameter_」不確定「」 becouse e.parameter.chk_i是「未定義」當按下按鈕時,我需要獲得複選框的輸入值(True/False)
var flexTableReg = app.createFlexTable().setId("flexTableReg").setBorderWidth(1);
var check = new Array(lastRow);
for(var r = 0; r < lastRow; r++){
for(var c = 0; c < lastCol; c++){
var text = rowsToConfirm[r][c].toString();//HERE IS THE CELL
flexTableReg.setText(r+1, c, text);
}
var id = rowsToConfirm[r][0];
check[r] = app.createCheckBox().setName("chk_"+id).setId("chk_"+id);
flexTableReg.setWidget(r+1, lastCol, check[r]);
}//end fors
}//end if
var botMod = app.createButton().setText("Activar").setId("botStatus");
var botHandle = app.createServerHandler("changeStatus").addCallbackElement(verticalPanelAdmin);
botMod.addClickHandler(botHandle);
mainPanelAdmin.add(flexTableReg);
mainPanelAdmin.add(botMod);
verticalPanelAdmin.add(mainPanelAdmin);
absolutePanelAdmin.add(verticalPanelAdmin);
app.add(absolutePanelAdmin);
return app;
}
function changeStatus(e){
var ss = SpreadsheetApp.openById(LOGS_SHEET_ID);
var app = UiApp.getActiveApplication();
var datarray = getDataArray();
var lastRow = ss.getLastRow();
for(var i =0; i<=lastRow;i++){
try{
var par = e.parameter["chk_"+i];
if(true){
stop_if_true
var row = getRowByID(0,lastRow,i);
ss.getRange("E"+i).setValue("1");
}//end if
}catch(e){e.parameter_"undefined" //if e.parameter "undefined"
return app;}
}//end for
return app;
};
是id = rowsToConfirm [r] [0] setNme和setId像chk_1 chk_2等。我將嘗試檢查'true''false'(string)而不是true,false。 – tolkedu
永遠不會到達IF功能。總是失敗: var par = e.parameter [「chk _」+ i]; 我絞盡我的HTML代碼和我的按鈕getName正確,但我的事件(E)沒有采取參數和跳轉趕上。 – tolkedu
我認爲我的adcallback功能不能正常工作,因爲我的按鈕有像chk_1,chk_2 rig rig id,但問題是當我嘗試用w.parameter.chk_1或chk_2來捕捉對象時。 – tolkedu