いくつかのフィルタリングを実行できるように、いくつかの入力要素を含む spring-mvc jsp テーブルがあります。ヘッドには、子の最初の要素としてフォームがあります。
<table>
<thead>
<form:form action="." modelAttribute="accountWrapper.theAccount">
<tr><td class="columhead" id="firstname"><div class="disp">first name</div>
<div class="filter"><form:input path="firstName"/></div></td>
<td class="columnhead" id="lastname"><div class="disp">last name</div>
<div class="filter"><form:input path="lastName"/></div></td>
<td>email</td></tr>
</form:form>
</thead>
<tbody>
ソースを確認すると、次のように表示されます。
<thead>
<form id="accountWrapper.theAccount" action="." method="post">
<tr><td class="columhead" id="firstname"><div class="disp">first name</div>
<div class="filter"><input id="theAccount.firstName" name="theAccount.firstName" type="text" value="search"/></div></td>
<td class="columnhead" id="lastname"><div class="disp">last name</div>
<div class="filter"><input id="theAccount.lastName" name="theAccount.lastName" type="text" value="search"/></div></td>
<td>email</td></tr>
</form>
</thead>
<tbody>
私が期待しているように、そうあるべきです。
しかし、JavaScript DOM を確認すると、フォーム要素は <thead> の直下にある空の要素であり、<input> 要素はフォームの外側にあります。そして、フォームの送信がうまくいきません。
<thead>
<form id="accountWrapper.theAccount" action="." method="post"></form>
<tr><td class="columhead" id="firstname"><div class="disp">first name</div>
<div class="filter"><input id="theAccount.firstName" name="theAccount.firstName" type="text" value="search"/></div></td>
<td class="columnhead" id="lastname"><div class="disp">last name</div>
<div class="filter"><input id="theAccount.lastName" name="theAccount.lastName" type="text" value="search"/></div></td>
<td>email</td></tr>
</thead>
<tbody>