java - 为什么struts2 html table会多生成一个<tr></tr>

标签 java html struts2

jsp中的代码

<table>
    <thead>
        <tr>
            <th>Code</th>
            <th>Name</th>
            <th>Continent</th>
            <th>Independence Year</th>
            <th>Head Of State</th>
            <th>Capital</th>
            <th>Added/Edited by</th>
            <th>Time of Edit</th>
            <th>Edit</th>
        </tr>
    </thead>
    <tbody>
          <s:iterator  value="list">  
            <tr>
                <td><s:property value="Code"/></td>  
                <td><s:property value="Name"/></td> 
                <td><s:property value="Continent"/></td> 
                <td><s:property value="IndepYear"/></td> 
                <td><s:property value="HeadOfState"/></td> 
                <td><s:property value="Capital"/></td> 
                <td><s:property value="editedbyuser"/></td> 
                <td><s:property value="editdatetime"/></td> 
                <td>
                    <s:a action="editworld">
                        edit<s:param name="Code" value="Code"/>
                    </s:a>
                </td>
            <tr>
          </s:iterator> 
     </tbody>
</table> 

生成的 HTML(仅一行)

<tr>
  <td>ABW</td>
  <td>Aruba</td>
  <td>North America</td>
  <td>Unknown</td>
  <td>Beatrix</td>
  <td>Oranjestad</td>
  <td>Unedited</td>
  <td>Unedited</td>
  <td>
    <a href="/Struts2Login/editworld.action?Code=ABW">edit</a>
  </td>
</tr>
<tr> </tr>

在上面的最后一行 <tr></tr>是一个额外的行。我无法理解这是如何生成的。每次都是 <tr></tr>在每个实际行之后生成。请帮助我。

最佳答案

首次关闭
<tr> </s:iterator>最后打开的位置应该关闭

试试这个

<s:if test="%{list!=null"}>
<s:iterator  value="list"> 
         <tr>
                <td><s:property value="Code"/></td>  
                <td><s:property value="Name"/></td> 
                <td><s:property value="Continent"/></td> 
                <td><s:property value="IndepYear"/></td> 
                <td><s:property value="HeadOfState"/></td> 
                <td><s:property value="Capital"/></td> 
                <td><s:property value="editedbyuser"/></td> 
                <td><s:property value="editdatetime"/></td> 
                <td>
                    <s:a action="editworld">
                        edit<s:param name="Code" value="Code"/>
                    </s:a>
                </td>
            <tr>
          </s:iterator> 
</s:if>

关于java - 为什么struts2 html table会多生成一个<tr></tr>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27729919/

相关文章:

java - Strust2从字符串到字节数组的类型转换错误?

JQuery 不验证 struts2 表单

Java - 抽象类中的链接构造函数

java - JNI_CreateJavaVM() 每次我运行我的应用程序时都会失败(确切地说)

java - 没有 apk 文件存在 PhoneGap 项目

java - 错误: Cannot find or load main class only when running outside of eclipse

html - Div 容器 - 如何完全填充它?

html - 第一个 child 在我的代码中不起作用

html - 使用 CSS 在背景上显示多个图像?

java - 使用Struts2访问jsp中action类的方法中本地定义的变量的值