【发布时间】:2012-04-27 11:17:29
【问题描述】:
我对@987654321@ 有这样的问题。当您将其设置为表单上的某些组件并为其添加验证时,在您按下“提交表单”按钮后,假设您收到一个错误,即您的组件未通过验证,之后 ajax 是表现不同,不更新模型。
这里是代码示例:
TextField someText = new TextField("someTextId");
someText.setRequired(true); //added validation on requireness
CheckBox checkBx = new CheckBox("checkBxId");
TextField changeableTxt = new TextField("changeableTxtId");
changeableTxt.setEnabled(false);
checkBx.add(new AjaxFormComponentUpdatingBehaviour("onclick"){
protected void onUpdate(AjaxRequestTarget target) {
if(compoundModel.isCheckBx()){
changeableTxt.setEnabled(true);
target.addComponent(changeableTxt);
}else{
compoundModel.setChangeableTxt(null);
changeableTxt.setEnabled(false);
target.addComponent(changeableTxt);
}
}
});
Form form = new Form("form", compoundModel);
form.add(someText, checkBx, changeableTxt);
add(form);
所以如果检查checkBx,请输入一些值到changeableTxt,将someText留空并按提交按钮,会出现错误,该字段 someText 是必需的。之后,如果我们点击checkBx,它将使changeableTxt字段被禁用,但它会在输入值之前离开,而不是null。
【问题讨论】:
标签: java ajax submit wicket behavior