vic的jsp總結4

本文探讨了如何在JSP页面上使用标签进行双层循环迭代不同长度的ArrayList,并根据ArrayList的内容显示相应的‘欠’字符或数值。通过具体示例展示了如何设置条件判断和变量标记以实现预期的页面输出。

在jsp頁面上,只使用標簽來迭代循環不定長度的arraylist,并根據arraylist中值,來反應輸出至頁面上,是復雜的。昨天我做了一個2重循環3個arraylist,其中,兩個arraylist的長度是6,另一個arraylist的長度是0-6不等。難度在于,長度不等的arraylist,需要在頁面上輸出6個值(即它含有的數在相應的頁面輸出“欠”,而沒含有的數則需要在相應的頁面輸出欠缺的數值。比如這個arraylist里存放的是1和3和4,則在也面上需要輸出“欠2欠欠56”)。我的思路是,外面兩個定長的arraylist做外層的大循環,而不定長的arraylist做內層小循環,因做小循環時,大循環的index值每自增一筆,內層小循環的index值每次都會從0-6依次循環,因小循環滿足條件時,需要跳出不好控制,則需要在小循環中設定標示變量,通過該表示變量的值來跳出內層循環,并在滿足條件是設定一個全局變量,方便被第2次小循環時抓住值來判斷處理。并以此輸出。我下面的例子是還有一點點小問題,現在沒有時間來改,先放上來backup下,在這個例子中我使用3個arraylist,其中兩個的長是4(testName和testGrade),一個是0-4(testNo)。

 

<% String count = "0"; %>
<logic:iterate id="index" name="_moduleForm" property="testName" indexId="idx" >
 <logic:iterate id="testno" name="_moduleForm" property="testNo" indexId="id"> 
 <logic:equal name="id" value="0">
  <logic:equal name="idx" value="0">       
      <logic:equal name="testno" value="1">
           欠                  
             <% count = "1"; %>                     
          <bean:define id="ss" value="1"></bean:define>       
         </logic:equal>
      <logic:notEqual name="testno" value="1">
                  1
         </logic:notEqual>   
  </logic:equal>
  
  <logic:equal name="idx" value="1">        
      <logic:equal name="testno" value="2">
              欠                 
             <% count = "2"; %>              
          <bean:define id="ss" value="1"></bean:define>                 
         </logic:equal>           
            <logic:notEqual name="ss" value="1">          
       <logic:notEqual name="testno" value="2">
           2
          </logic:notEqual>     
      </logic:notEqual>      
  </logic:equal>
   
  <logic:equal name="idx" value="2">       
      <logic:equal name="testno" value="3">
        欠      
          <% count = "3"; %>         
          <bean:define id="ss" value="1"></bean:define>                  
      </logic:equal>         
      <logic:notEqual name="ss" value="1"> 
       <logic:notEqual name="testno" value="3">
              3
          </logic:notEqual>
      </logic:notEqual>   
  </logic:equal>
  
  <logic:equal name="idx" value="3">       
   <logic:equal name="testno" value="4">
        欠  
          <% count = "4"; %>              
          <bean:define id="ss" value="1"></bean:define>                
      </logic:equal>
      <logic:notEqual name="ss" value="1"> 
       <logic:notEqual name="testno" value="4">
              4
          </logic:notEqual>         
      </logic:notEqual>   
  </logic:equal>  
 </logic:equal>
 


 <logic:equal name="id" value="1"> 
  <bean:define id="qian" value="<%=count %>"></bean:define>
  <logic:equal value="1" name="qian">
      <logic:equal name="idx" value="1">       
       <logic:equal name="testno" value="2">
                   欠                
          </logic:equal>
       <logic:notEqual name="testno" value="2">
                   2
          </logic:notEqual>   
   </logic:equal>  
   <logic:equal name="idx" value="2">       
       <logic:equal name="testno" value="3">
                   欠                 
          </logic:equal>
       <logic:notEqual name="testno" value="3">
                   3
          </logic:notEqual>  
   </logic:equal>                          
   <logic:equal name="idx" value="3">        
       <logic:equal name="testno" value="4">
                   欠               
          </logic:equal>
       <logic:notEqual name="testno" value="4">
                   4
          </logic:notEqual>
   </logic:equal>   
  </logic:equal>
    
  <bean:define id="qian" value="<%=count %>"></bean:define>
  <logic:equal value="2" name="qian">       
   <logic:equal name="idx" value="2">       
       <logic:equal name="testno" value="3">
                   欠                 
          </logic:equal>  
       <logic:notEqual name="testno" value="3">
                   3
          </logic:notEqual>   
   </logic:equal>                          
   <logic:equal name="idx" value="3">        
       <logic:equal name="testno" value="4">
                   欠                
          </logic:equal> 
       <logic:notEqual name="testno" value="4">
                   4
          </logic:notEqual>
   </logic:equal>   
        </logic:equal>       
   
       
  <bean:define id="qian" value="<%=count %>"></bean:define>
  <logic:equal value="3" name="qian">  
   <logic:equal name="idx" value="3">
    <logic:equal name="testno" value="4">
                欠                 
       </logic:equal>  
    <logic:notEqual name="testno" value="4">
                4
       </logic:notEqual>
   </logic:equal>   
        </logic:equal>
    </logic:equal>           

</logic:iterate> 
 <logic:iterate id="testname" name="_moduleForm" property="testName" offset="idx" length="1">
  <bean:write name="testname" />
 </logic:iterate>
 <logic:iterate id="testgrade" name="_moduleForm" property="testGrade" offset="idx" length="1" >
  <bean:write name="testgrade" />
 </logic:iterate> <br>  
</logic:iterate>

</body>
</html:html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值