フィールドの右側にエラー メッセージを表示したい。ただし、パスワード フィールドにエラーがある場合、パスワードのエラー メッセージは userName フィールドの右側にあります。なぜそのように振る舞うのですか?w3schools に基づいて、私の形式は正しいです。パスワードが正しくありませんというエラー メッセージは、パスワード フィールドの右側にあるはずです。
これは、フォーム内でフォローしているパターンです。
<table border="1">
<tr>
<td>UserNAme</td>
<td>UserName Error message</td>
</tr>
<tr>
<td>Password</td>
<td>Password Error Message</td>
</tr>
</table>
これは私の Struts2 コードです。
<!--Struts2 log-in-->
<s:form method="POST" action="login" theme="simple" >
<table border="1" >
<tr>
<td>
UserName:<s:textfield label="UserName" key="userName" maxLength="20"/>
</td>
<td class="errorMessage">
<s:property value="fieldErrors.get('userName').get(0)" />
</td>
</tr>
<tr>
<td>
PassWord:<s:password label="Password" key="password" maxLength="20"/>
</td>
<td class="errorMessage">
<s:property value="fieldErrors.get('password').get(0)" />
<td>
</tr>
<tr>
<td>
<s:submit value="Login" align="center"/>
</td>
</tr>
</table>
</s:form>
This is the html result of the struts.
<!--Struts2 log-in-->
<form id="login" name="login" action="/springtest/login.action" method="POST">
<table border="1" >
<tr>
<td>
UserName:<input type="text" name="userName" maxlength="20" value="tok" id="login_userName"/>
</td>
<td class="errorMessage">
Username don't exist.
</td>
</tr>
<tr>
<td>
PassWord:<input type="password" name="password" maxlength="20" id="login_password"/>
</td>
<td class="errorMessage">
<td>
</tr>
<tr>
<td>
<input type="submit" id="login_0" value="Login"/>
</td>
</tr>
</table>
</form>