如何格式化Struts2中的表?

问题描述 投票:0回答:3

我需要以一种方式对其进行格式化,以显示顶部的四个标题以及它们下面的所有字段。但它会产生额外的tds和trs。

 <form name="edit" method="POST" action="edit">
          <table border="4">
              <thead><tr>
                      <td>Field1</td><td>Field2</td><td>Field3</td<td>Field4</td>            
                     </tr>
              </thead>
              <tbody>
                <s:iterator value="basket.items" var="item" status="element">
                  <tr>
                    <td> <s:textfield type="hidden" id="item[%{#element.index}].id"
                                        name="item[%{#element.index}].id" value="%{id/></td>
                    <td> <s:textfield id="item[%{#element.index}].product.price" 
                                        name="item[%{#element.index}].product.price" value="%{product.price}" /></td>
                    <td> <s:label value="%{product.name}"/></td>

                    <td> <s:label value="%{time}"/> </td>

                    <td> <s:label value="%{date}"/>    </td>

                    <td> <s:textfield name="item[%{#element.index}].product.price2" 
                                       id="item[{#element.index}].product.price2" value="%{product.price2}"/></td>
                 </tr>
               </s:iterator>
             </tbody>
       </table> 
   <input id="edit" type="submit" name="action" value="Edit"/>
 </form>

HTML

    <form name="edit" method="POST" action="edit">
          <table border="4">
                <thead><tr>
                         <td>Field1</td><td>Field2</td><td>Field3</td<td>Field4</td>            
                       </tr>
               </thead>
                <tbody>    
                        <tr>
                            <td>  <tr>
                               <td class="tdLabel"></td>
                            <td><input type="hidden" name="item[0].id" value="16" 
                                                     id="item[0].id"/></td>
                       </tr>
                       </td>
                       <td><tr>
                              <td class="tdLabel"></td>
                      <td><input type="text" name="item[0].product.price" 
                                             value="55"      
                                             id="item[0].product.price"/></td>
                      </tr>
                      </td>
                      <td><tr>
                          <td class="tdLabel"></td> 
                               <td><label id="">Product1</label></td>
                      </tr></td>
                      <td><tr>
                           <td class="tdLabel"></td>
                           <td><label id="">9:31:03 AM</label></td>
                      </tr>
                      </td>
                      <td><tr>
                           <td class="tdLabel"></td>
                           <td><label id="">2013</label></td></tr>
                      </td>
                      <td><tr>
                           <td class="tdLabel"></td>
                           <td><input type="text" name="item[0].unit.price2" 
                                      value="1000.0"  
                                      id="item[0].unit.price2"/>              

                            </td>
                      </tr>
                      </td>
                      </tr>

                </tbody>
            </table> 
css jsp struts2 listiterator
3个回答
3
投票

只需删除额外的东西和格式,切换到simple主题即可。

对于例如

<s:textfield name="name" theme="simple"/>

现在它不会创建任何额外的TR或TD。


1
投票

将身体字段放入td中 编辑: 试试这个

<td>Field1</td><td>Field2</td><td>Field3</td><td>Field4</td>

你忘记了3号场附近的一个支架 编辑: 通过在Qazxswpoi和</tr>之间放置TD,你也做了一些奇怪的事情.TD的总是必须在TR的内部 编辑: <tr>这看起来真的很好看,看到最后,你忘了引用:)


1
投票

你还需要<td> <s:textfield type="hidden" id="item[%{#element.index}].id" name="item[%{#element.index}].id" value="%{id/></td>中的<td>s:

<tbody>

在这方面,<tbody> <tr> <td>cell content column 1</td> <td>cell content column 2</td> <td>cell content column 3</td> <td>cell content column 4</td> </tr> </tbody> 表现得像tbody。请注意匹配两个部分中的列数。

编辑

好像你的迭代器会处理tbody部分中的所有TR和TD。但它也为字段标签创建了TD。

因此,在表体中,它创建的列数是表头中的两倍。您可以在表头中添加额外的标题单元格,或者您可以利用迭代器的结构并使用输入标签并丢失thead

© www.soinside.com 2019 - 2024. All rights reserved.