如何getDefaultModelObject没有提交表格Wicket

时间:2012-05-08 19:48:55

标签: java html wicket

我有一些checkgroup,我可以getDefaultModelObject没有提交表单我需要选中复选框谢谢你,对不起我的enlish不好

1 个答案:

答案 0 :(得分:1)

很难从您的问题中得知,但如果您想要获得关于复选框更改的通知,并在每次更改时更新CheckGroup的modelobject,请使用AjaxFormChoiceComponentUpdatingBehavior

CheckGroup cg = new CheckGroup("id");
cg.add(new Radio("id1", someObject);    
cg.add(new Radio("id2", someObject2);
cg.add(new Radio("id3", someObject3);
cg.add(new AjaxFormChoiceComponentUpdatingBehavior(){
    @Override
    protected void onUpdate(AjaxRequestTarget target) {
        // Get the CheckGroup's updated model object.
        Object modelObject = getComponent().getModelObject(); 
    } 
};

此组件将在您的<input type="check"><input type="radio">上输出正确的javascript事件侦听器,以便调用行为的onUpdate方法。

考虑到AjaxFormChoiceComponentUpdatingBehavior将对该组件执行Validators(并相应地调用onError而不是onUpdate),但它不会执行FormValidators,因此如果是这种情况,您必须自己检查输入。