单击Wicket中不同面板中的复选框时更新文本字段

时间:2012-07-24 12:36:14

标签: checkbox wicket textfield

当更新其他面板上的复选框时,如何更新面板上的文本字段?

查看图片

image

我想做的是:

 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")));

            }

        }
    };

由于

1 个答案:

答案 0 :(得分:2)

在第二个面板(包含复选框)上,您可以添加必须由第一个面板(包含文本字段)实现的抽象方法onUpdateCheckbox(AjaxRequestTarget target)

onUpdate(...)的{​​{1}}方法只需调用此抽象方法。

在第一个面板上实现AjaxCheckBox时,您可以操作文本字段并将其添加到目标对象。