【发布时间】:2017-02-10 11:47:05
【问题描述】:
我有一个验证器,它用has-error 标记正确填充了两个密码容器。但是如何摆脱errors.rejectValue()产生的两条错误消息之一呢?
password blank: true, nullable: true, validator: { password, obj, errors ->
if (obj.password2 != password){
errors.rejectValue('password', 'invalid.matchingpasswords')
errors.rejectValue('password2', 'invalid.matchingpasswords')
return false
}
}
另一种可能性是,告诉 spring 将 has-error 标签放入第二个密码容器中。
【问题讨论】:
-
听起来你想要它,但你不想要它。我的意思是它显示了 has-error 标签,为什么?是因为它在该实例上有错误因此显示 has-error 所以如果你不希望第二条消息不要返回它但是你不会得到你的错误,你可以解析你的错误并选择忽略那个是替代stackoverflow.com/questions/31732452/…。尝试将该错误设置为无输出以查看是否符合您的要求
-
当密码不匹配时会出现问题,我希望容器周围有这个红色边框,但我不希望弹出 2 个警报,说明密码不匹配.
-
stackoverflow.com/questions/19323652/… 如前所述,看看在这种情况下更改 gsp 中的错误。以上可能提供线索
-
sorry : github.com/grails/grails-core/blob/master/grails-web-gsp-taglib/… 基本上,您希望拦截它的正常工作方式,并且该特定页面上的特定消息具有不同的行为 - 制作您自己的错误页面,忽略该特定字段错误。或者,您可以使两个失败都只失败 1 个字段。为了突出显示另一个框,似乎需要做很多工作。可能更容易在 1 更改时使用一些 js 事件触发更改.. 和失败 1