小编bud*_*apa的帖子

Springboot Thymeleaf 表单验证不起作用

我试图验证 Thymeleaf 中的字段,但错误未显示在视图页面中。

我的控制器

@Controller
public class UserController {

    private static final String ADD_NEW_USER="user/addUser";

    @Autowired
    UserService userService;
        @RequestMapping(value="/user/new", method=RequestMethod.GET)
    public String addUser(Registration register, Model model){
        model.addAttribute("register",register);
        return ADD_NEW_USER;
    }

    @RequestMapping(value="/user/new", method=RequestMethod.POST)
    public String addUser(@Valid Registration register, BindingResult result, Model model){
        model.addAttribute("register",register);
        if(result.hasErrors()){
           List<FieldError> err=result.getFieldErrors();

           for(FieldError e:err){
                System.out.println("Error on object ---> "+e.getObjectName()+" on field ---> "+e.getField()+". Message ---> "+e.getDefaultMessage());
           }
           return ADD_NEW_USER;
        }
        return INDEX_PAGE;
    }
}
Run Code Online (Sandbox Code Playgroud)

查看模板

<form th:action="@{/user/new}" th:method="post" th:object="${register}" id="addUser" role="form">
    <fieldset>
        <legend> 
            <p>Field with <span class="required">*</span> are …
Run Code Online (Sandbox Code Playgroud)

forms validation thymeleaf spring-boot

2
推荐指数
2
解决办法
3633
查看次数

阻止直接从地址栏执行代码

这是一个BooksController?deleteBId=240请求从表中删除行的代码.当我button从页面中按删除时,会出现JavaScript确认对话框,我可以点击YesNo.如果我不小心按了删除按钮会很有帮助.但是,如果我通过按Enter键直接从地址栏执行,则不会出现确认框,并且该行将被删除.有什么办法可以防止这种情况发生.

java servlets

0
推荐指数
1
解决办法
59
查看次数

标签 统计

forms ×1

java ×1

servlets ×1

spring-boot ×1

thymeleaf ×1

validation ×1