Как отобразить ошибки BindingResult в модальном всплывающем окне Foundation с помощью ввода формы - PullRequest
0 голосов
/ 10 февраля 2019

Я работаю с пружинными контроллерами и представлениями тимелист для веб-сайта.У меня есть HTML-страница, которая отображает все данные пользователя.Следовательно, при нажатии кнопки «редактировать» я выскакиваю модал (фундамент), который содержит форму со всеми редактируемыми полями пользователя.При отправке пружинного контроллера запрашивается проверка полей ввода и, в конечном итоге, сохранение обновлений.

Однако в случае ошибок проверки я хочу перезагрузить страницу из контроллера с отображением модального режима со всеми ошибками.

Как я могу проверить, есть ли в форме ошибки, и в конечном итоге вывести модал?

Здесь контроллер.

    @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>
...