2 개의 입력이 있습니다. 단추 (AjaxFallbackButton)를 누르면 해당 입력이 데이터베이스에 저장됩니다.Wicket : AjaxFallbackButton이있는 모달 패널을 사용할 수 있습니까?
입력 중 하나가 10보다 큰 경우 버튼을 누르면 모달 패널을 표시하여 사용자에게 옵션에 대해 확신 할 수 있는지 묻습니다. 그러나 모달 구성 요소가 나타나지 않습니다. 이견있는 사람?
@Override
public void onSubmit(AjaxRequestTarget target) {
if (input < 10) { //save to database
} else {
AskingDialogPanel panel = new AskingDialogPanel("content",
new ResourceModel("asking.title"),
new ResourceModel("asking.message")) {
@Override
public void onOkClick(AjaxRequestTarget target) {
super.onOkClick(target);
//save to database
modalWindow.close(target);
}
@Override
public void onCancelClick(AjaxRequestTarget target) {
super.onCancelClick(target);
modalWindow.close(target);
}
};
panel.setOutputMarkupId(true);
target.addComponent(panel);
modalWindow.setContent(panel);
modalWindow.show(target);
}
더 많은 코드가 도움이 될 것입니다. 거기에 코드가 필요하지 않아야합니다 (Tim의 답변에 대한 내 의견을 참조하십시오). 그러나 표시된 부분에서 모달 창을 표시하지 못하는 것은 보이지 않습니다. 디버거를 사용했거나 로그 또는 테스트를 디버깅하여 여기에 else 절이 실제로 도달했는지 확인 했습니까? –