wicket의 일부 구성 요소가 양식과 연결되어있는 것으로 보이지만 실제로 양식을 제출할 수 없습니다.Wicket : RadioChoice 구성 요소에서 양식 제출을 호출합니다. 무엇이 누락 되었습니까?
예를 들어, 나는 "submitlink"또는 버튼을 만들 수 및 해당 구성 요소 제출 : 위의 작동
return new SubmitLink(id, form) {
@Override
public void onSubmit() {
this.setResponsePage(pageClass);
}
};
합니다.
변경시 라디오 선택에 대한 제출을 수행 할 수 있기를 원합니다. 예 :
new OnChangeHandler() {
@Override
public void onChange(final Object sel) {
// On submission, submit back to form
setResponsePage(Page.class);
}
// MY CONTAINER IS NOT A FORM BUT A CHILD OF A FORM (E.g. FORM -> PANEL -> RADIOCHOICE
public RadioChoice addRadioGroup(final WebMarkupContainer container, final Object modelObject,
final String groupName, final String propFieldName, final String [] optionsArr, final OnChangeHandler handler) {
final RadioChoice radioGroupYesNo = new RadioChoice(groupName, new PropertyModel(modelObject, propFieldName), Arrays.asList(optionsArr)) {
@Override
public boolean wantOnSelectionChangedNotifications() {
return (handler != null); /* When the handler is not null, enable on change */
}
@Override
public void onSelectionChanged(Object newSel) {
if (handler != null) {
handler.onChange(newSel);
} else {
super.onSelectionChanged(newSel);
}
}
};
container.add(radioGroupYesNo);
return radioGroupYesNo;
}
위에 표시된 코드를 사용하면 페이지가 새로 고침되지만 양식을 제출하고 페이지 새로 고침을 수행하려고합니다.
어디에서 양식을 RadioChoice와 연결할 수 있는지 알 수 없습니까?
예제 코드 링크가 작동하지 않습니다 (404). – jarnoan
예제 링크를 수정했습니다. –