s标签s:if和s:set实现一个表格显示为多个表格

1.首先本来这个表格是这样的

2.这时候代码是这样的

<table  cellpadding="4">
       <tr>
       <th>指标点</th>
       <th>课程</th>
       <th>权重</th>
       <th>达成情况</th>
       </tr>
       <s:iterator value="courseweightaccomplishlist">
       <tr>
       <td><s:property value="pointnumber"/></td>
            <td><s:property value="course"/></td>
            <td><s:property value="weight"/></td> 
            <td><s:property value="accomplish"/></td>                          
       </tr>
       </s:iterator>          
    </table>        

3.然后我想要将它根据指标点分为多个表格,代码:

<s:set name="ttt" value="2" />
     <s:iterator value="new int[4]" status="i">
     <s:hidden value="#i.index+1" />
     
     <s:if test="%{#ttt==2}">
    <s:set name="ttt" value="1" />
    <table class="table" cellpadding="4">
       <tr>
       <th>指标点</th>
       <th>课程</th>
       <th>权重</th>
       <th>达成情况</th>
       </tr>
       <s:iterator value="courseweightaccomplishlist">
       <s:if test="%{pointnumber.substring(pointnumber.length()-1,pointnumber.length())==#i.index+1}">
       <tr>
       	   <td><s:property value="pointnumber"/></td>
            <td><s:property value="course"/></td>
            <td><s:property value="weight"/></td> 
            <td><s:property value="accomplish"/></td>    
            <s:set name="ttt" value="2" />                      
       </tr>
       </s:if>      
       </s:iterator>          
    </table>        
   <s:property value="#ttt"/><s:property value="#i.index"/>
     </s:if>
   
  </s:iterator>

这样的话会多一个table,去掉它

<script type="text/javascript">
 $(".table").last().remove(); 
 </script>

4.这时候结果是这样的

5.小结

s:iterator就是循环,
s:property用来打印value,
s:if判断,还有s:elseif,
s:set用来定义变量或给变量赋值。
个人见解,不代表权威。
原文地址:https://www.cnblogs.com/feifeishi/p/6552826.html