当TextField及其周围的FormComponentPanel使用相同的模型时,我真的很想了解为什么以下代码的模型对象始终为空:
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);
}
}
我知道我可以通过覆盖 Javadocs 中描述的 Panel 的 convertInput 来解决这个问题:
@Override
protected void convertInput() {
setConvertedInput(_field.getConvertedInput());
}
我真的很想了解为什么 TextField 的更改不会像我期望的那样更新模型:将模型对象设置为用户的输入。