【发布时间】:2014-04-22 18:02:04
【问题描述】:
每当我们尝试添加记录(PARAMETER, VALUE) 时,我都有一个使用 CustomValidator 来检查非空字段的表单
我正在寻找一种在尝试删除时禁用表单验证的方法(如果用户改变主意并且不需要添加更多内容,用户可以删除一个空的 listGridRecord)。
我正在使用这个自定义验证器:
CustomValidator validatorParameter = new CustomValidator() {
@Override
protected boolean condition(Object value) {
parameterName = (String) value;
if ((value == null || ((String) value).trim().isEmpty())) {
rowIsValidate = false;
return false;
} else {
rowIsValidate = true;
return true;
}
}
};
我以这种方式在init() 方法中设置:
parametersListGrid.getField(PARAMETER).setValidators(validatorParameter);
每当我检测到单击删除按钮并以这种方式使用它时,我都会尝试将标志“noValidation”设置为真:
CustomValidator validatorParameter = new CustomValidator() {
@Override
protected boolean condition(Object value) {
parameterName = (String) value;
if (((value == null || ((String) value).trim().isEmpty())) && !noValidation){
rowIsValidate = false;
return false;
} else {
rowIsValidate = true;
return true;
}
}
};
但我发现这个标志是在验证发生后设置的,所以
rowIsValidate 保持为假,鉴于验证后显示的错误,我们无法删除空记录;
关于如何在删除场景中通过此验证步骤的任何想法?
【问题讨论】:
标签: java validation gwt smartgwt