2

私はSpringが初めてで、フォームエラーを表示しようとして問題が発生しています。

私は次のフォームを持っています:

<form:form action="loginform.html" commandName="loginForm" onsubmit="goWait();">
<table><tr>
           <td>User Name: </td>
           <td><form:input path="userName" /></td>
        </tr>
        <tr> 
           <td>Password: </td>
           <td><form:password path="password"/> </td>
        <tr>
            <td colspan="2">
             <input type="submit" value="Login" style="butt-login">
            </td>
        </tr>
</table>                                                        
</form:form>

LoginFormご覧のとおり、フォームはそれを検証する Bean によって支えられています。

このフォームの外で、検証からのすべてのエラーを表示したいと思います。このようなもの:

<div>
   <ul>
      <li><form:errors path="userName"/></li>
      <li><form:errors path="password"/></li>
   </ul>
</div>

この div は の外側にある必要があるため、タグを使用できません。

これどうやってするの?

4

3 に答える 3

4

form:errors によって生成された html をキャプチャして、フォームの後のどこかに表示することができます。

<form:form ...>
    <c:set var="err">
        <form:errors path="*" element="div" id="err" cssClass="hidden" />
    </c:set>
</form:form>

....

<c:out value="${err}" />

フォームの前にエラーを表示したい場合は、少しの jQuery でそれを行うことができます

于 2013-07-16T13:50:04.997 に答える
3

はい、form:form タグの外で form:errors タグを使用できます

<form:errors path="yourBindedObject.*" />
<form:form action="loginform.html" commandName="loginForm" onsubmit="goWait();">
<table><tr>
           <td>User Name: </td>
           <td><form:input path="userName" /></td>
        </tr>
        <tr> 
           <td>Password: </td>
           <td><form:password path="password"/> </td>
        <tr>
            <td colspan="2">
             <input type="submit" value="Login" style="butt-login">
            </td>
        </tr>
</table>                                                        
</form:form>
于 2015-09-23T10:12:20.830 に答える
0

フィールドに関連付けられたすべてのエラーを表示したい場合は、path属性に星を渡すだけです。

<form:errors path="*" />

しかし、グローバル エラー メッセージを表示したい場合は、空の文字列を渡すだけです。

<form:errors path="" />

関連する詳細情報: http://www.mkyong.com/spring-mvc/spring-mvc-form-errors-tag-example/

于 2013-02-11T19:39:27.897 に答える