我真的想明白为什么下面的代码的模型对象总是空,当相同的模型被用于由TextField及其周边FormComponentPanel:为什么FormComponentPanels中的共享模型不起作用?
public class MyPanel extends FormComponentPanel<String> {
private TextField<String> _field;
public MyPanel(String id, IModel<String> model) {
super(id, model);
_field = new TextField<String>("field", model);
add(_field);
}
}
我知道我可以通过重写解决这个问题面板的convertInput,这是JavaDoc中所述:
@Override
protected void convertInput() {
setConvertedInput(_field.getConvertedInput());
}
我真的想了解为什么文本域的更改不会更新模型我希望的方式:设置模型对象到用户的输入。
因此,TextField的模型更新按预期工作,但表单组件面板会覆盖此值。非常感谢! –