0

いくつかのフィルタリングを実行できるように、いくつかの入力要素を含む 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>
4

1 に答える 1

0

<form>要素内に要素を含めることはできません<thead>。このルールは、と<table>を除くすべてのサブ要素に適用されます。何らかの理由で、Spring はすぐに閉じた HTML をシリアライズしてレンダリングします。<th><td><form>

テーブル全体を<form>.

于 2013-09-25T17:30:34.907 に答える