当更新其他面板上的复选框时,如何更新面板上的文本字段?
查看图片
我想做的是:
AjaxCheckBox checkbox= new AjaxCheckBox("checkbox") {
@Override
protected void onUpdate(AjaxRequestTarget target) {
boolean selected = getModelObject();
if(selected){
TextField textField = panel.getTextField();
textField.setModelObject(obj);
textField.add(new AttributeModifier("readonly", true,
new Model("readonly")));
}
}
};
由于
答案 0 :(得分:2)
在第二个面板(包含复选框)上,您可以添加必须由第一个面板(包含文本字段)实现的抽象方法onUpdateCheckbox(AjaxRequestTarget target)
。
onUpdate(...)
的{{1}}方法只需调用此抽象方法。
在第一个面板上实现AjaxCheckBox
时,您可以操作文本字段并将其添加到目标对象。