0
나는 미치겠다고 생각한다. true/false는 doPost 이전에 액세스 할 수있는 모든 것임에 따라 라디오 버튼의 값을 확인하려고 시도하면서 핸들러 e.parameter 조합을 사용하고 있습니다. working version은 다음과 같습니다.RadioButton이 값을 전달하지만 6 번째에 실패합니까?
제 6 단추를 추가하고 확인하려고하면 여섯 번째 e.parameter가 정의되지 않은 상태로 반환됩니다. 나는 내가 생각할 수있는 모든 것을 시도했다. 여기에 non-working version
나는 완전히 잃어 버렸습니다.
여기 깨진 코드입니다 :
function doGet(){
var app = UiApp.createApplication();
var form = app.createFormPanel().setId('form');
var appPanel = app.createVerticalPanel();
var programGrid = app.createGrid(6,5).setWidth('900px');
var programButton1 = app.createRadioButton("program", "Spring 1").setFormValue('Spring 1').setName('program1').setId('program1');
var programButton2 = app.createRadioButton("program", "Spring 2").setFormValue('Spring 2').setName('program2').setId('program2');
var programButton3 = app.createRadioButton("program", "Spring 3").setFormValue('Spring 3').setName('program3').setId('program3');
var programButton4 = app.createRadioButton("program", "Summer 1").setFormValue('Summer 1').setName('program4').setId('program4');
var programButton5 = app.createRadioButton("program", "Summer 2").setFormValue('Summer 2').setName('program5').setId('program5');
var programButton6 = app.createRadioButton("program", "Summer 3").setFormValue('Summer 3').setName('program6').setId('program6');
programGrid.setWidget(0,1, programButton1);
programGrid.setWidget(1,1, programButton2);
programGrid.setWidget(2,1, programButton3);
programGrid.setWidget(0,3, programButton4);
programGrid.setWidget(1,3, programButton5);
programGrid.setWidget(2,3, programButton6);
var button1 = app.createButton("Verify Input").setEnabled(true);
programGrid.setWidget(4,3, button1);
var syncChangeHandler = app.createServerHandler('syncText').addCallbackElement(form);
var reviewPanel = app.createVerticalPanel().setVisible(true).setId('reviewPanel');
var reviewLabel = app.createLabel("REVIEW PANEL")
var reviewProgramLabel = app.createLabel("Program Selected:");
var reviewProgram = app.createLabel().setId('reviewProgram');
var reviewProgramGrid = app.createGrid(2,2);
reviewProgramGrid.setWidget(1,0, reviewProgramLabel);
reviewProgramGrid.setWidget(1,1, reviewProgram);
reviewPanel.add(reviewProgramGrid);
button1.addClickHandler(syncChangeHandler);
app.add(form);
form.add(appPanel);
appPanel.add(programGrid);
appPanel.add(reviewPanel);
return app;
}
function syncText(e){
var app = UiApp.getActiveApplication();
var a = e.parameter.program1;
var b = e.parameter.program2;
var c = e.parameter.program3;
var d = e.parameter.program4;
var e = e.parameter.program5;
var f = e.parameter.program6;
if(a == "true")
{
var g = "Spring 1";
}
if(b == "true")
{
var g = "Spring 2";
}
if(c == "true")
{
var g = "Spring 3";
}
if(d == "true")
{
var g = "Summer 1";
}
if(e == "true")
{
var g = "Summer 2";
}
if(f == "true")
{
var g = "Summer 3";
}
app.getElementById('reviewProgram').setText(g);
return app;
}
분명하지만 올바르게 처리됩니다. 고맙습니다. 긴 하루! – MartinK