如何在具有表单输入的Foundation模式弹出窗口上显示BindingResult错误

时间:2019-02-10 17:30:51

标签: jquery html spring-mvc thymeleaf zurb-foundation

我正在使用弹簧控制器和百里香浏览一个网站。 我有一个html页面,显示所有用户详细信息。因此,在单击“编辑”按钮时,我弹出一个模式(基础),该模式包含一个包含用户所有可编辑字段的表单。提交后,将询问spring控制器以验证输入字段并最终保存更新。

但是,如果发生验证错误,我想从控制器重新加载页面,并显示所有错误的模式。

如何验证表单是否有错误,并最终弹出模式对话框?

这里是控制器。

    @PostMapping(path="/admin/associati/modifica")
    public String editAssociato(final HttpServletRequest request,  @ModelAttribute("associato") @Valid User associato, 
                BindingResult result, RedirectAttributes redirectAttributes, Principal principal, Model model) {        
        if (result.hasErrors()) {
            // DO STUFF
            return "associati/associati_nuovo";
        }       
        return "redirect:/admin/associati";
}

这里是模态:

<div id="myModal" class="reveal-modal" data-reveal aria-labelledby="modalTitle" aria-hidden="true" role="dialog">
	
    <form th:object="${associato}" th:action="@{/admin/associati/nuovo}" method="post">
	
        <div class="profile_fields_row">
            <h4>Nome</h4>
            <input type="text" name="nome" th:field="*{nome}">
            <span th:if="${#fields.hasErrors('nome')}" th:errors="*{nome}" th:text="#{NotNull.user.firstName}"></span>
        </div>

        <div class="profile_fields_row">
            <h4>Cognome</h4>
            <input type="text" name="cognome" th:field="*{cognome}">
            <span th:if="${#fields.hasErrors('cognome')}" th:errors="*{cognome}" th:text="#{NotNull.user.lastName}"></span>
        </div>
        
        ... OTHER FIELDS ...
	
	<div style="text-align: right;">
            <input class="button" type="submit" value="Salva">
            <a class="button minimal no_icon" href="#">Annulla</a>
        </div>
    </form>
</div>

0 个答案:

没有答案