如何在标题中说我几个小时都无法解决这个问题。我希望我会得到一些有用的回复,谢谢。
wicket版本:1.5.7
public class EvalSearcherPage extends MenuPage {
...
private Code selectedEvalChoice;
...
...
RadioChoice<Code> evalRadioChoice = new RadioChoice<Code>("evalRadioChoice", new PropertyModel<Code>(this, "selectedEvalChoice"), EVAL_CHOICES, new ChoiceRenderer<Code>(getLocaleColumn()));
evalRadioChoice.add(new AjaxFormComponentUpdatingBehavior("onchange") {
private static final long serialVersionUID = 1L;
@Override
protected void onUpdate(AjaxRequestTarget target) {
...
target.add(...);
}
});
evalChoiceForm.add(evalRadioChoice);
...
在构造函数中: EVAL_CHOICES由选择填充, selectedEvalChoice由默认选项
填充一切顺利,直到我想选择其他选择。之后,RadioChoice将null保存到selectedEvalChoice。
问题出在哪里,有人可以帮忙吗?
Btw getter和setter是针对selectedEvalChoice实现的,但我知道这不是必需的。
答案 0 :(得分:2)
对于RadioChoice,您必须使用AjaxForm * Choice * ComponentUpdatingBehavior。
检查你的日志输出,你应该在那里找到警告。