如何在Spring表单验证失败时记住输入字段值



这个问题说明了一切,每当spring验证失败并且表单页面再次由spring重新呈现时,非spring输入元素即那些没有<form:input..>结构的元素失去了它们的值。我希望记住这些值,并将它们与错误消息一起重新显示。我怎样才能做到这一点呢?

同样,当spring在表单验证失败时重新呈现该视图时,不会调用$(document).ready()函数。为什么不调用它。当发生这种情况时,我想清除密码字段

这个问题问得好。

在我们的例子中,我们没有使用Spring验证,因为我们在我们的类上实现了验证。

但是如果您使用'@Validation'注释来验证表单/bean,则可以使用下面的方法

    @RequestMapping(value = "/signup", method = RequestMethod.POST)
    public String addCustomer(@Valid Customer customer, BindingResult result, ModelMap map) {
        if (result.hasErrors()) {
             //add your other validations here. those which are not included in your bean validation
             //map.add(...);
            return "SignUpForm";
        } else {
            return "Done";
        }
    }
然后在你的前端(.jsp、.xhtml、*.jsf等)中,你可以通过类似"#{myValue}"的方式呈现这些值。

另外,对于您的第二个问题,我唯一看到的是'$(document).ready()如果你使用jquery进行验证并将结果重新呈现到页面上,

让我知道这是否有帮助。干杯!

最新更新