<logic:notEmpty name="rList">
  <logic:iterate id="lst" name="rList">
       <tr>
        <td class="TableData" colspan="3">
           <html:multibox property="rules">
              <bean:write name="lst" property="id"/>
           </html:multibox> 
              <bean:write name="lst" property="name"/>
       </td>
      </tr>
  </logic:iterate>
</logic:notEmpty>
大家想想办法,怎么把这个List的值显示为每行3个复选框(也可指定为任意个)。而不是每行显示一个。
想了好半天没想出什么好办法来,真是笨到家了啊。哎,最近做项目做的我晕呼呼的~~~

解决方案 »

  1.   

    logic:iterate不好用,用c:forEach<ul>
    <c:forEach var="lst" items="rList" varStatus="rowCounter">
          <li>
              <html:multibox property="rules"> 
                  <bean:write name="lst" property="id"/> 
              </html:multibox> 
                  <bean:write name="lst" property="name"/> 
          <c:if test="%{(rowCounter%3 eq 0) or (rowCounter+1) eq fn:length(rList)}"
          </li>
          </c:if>
      </c:forEach> 
    </ul>
      

  2.   


    .lst li{
       width:33%;
       float:left;
    }
    <ul class="lst">
    <c:forEach var="lst" items="rList" varStatus="rowCounter">
     <li>
        <html:multibox property="rules"> 
            <bean:write name="lst" property="id"/> 
         </html:multibox> 
         <bean:write name="lst" property="name"/>
     </li>
    </c:forEach> 
    </ul>
      

  3.   

     用foreach吧再声明一个变量 i=0;每次循环一下++i;if(i%3==0)另起一行
      

  4.   

    用foreach,选中的复选框的值能不能传到后台去做处理
      

  5.   

    总是显示这个异常:
    javax.servlet.jsp.JspException: No getter method for property id of bean lst
    rList中保存的已经是对象了(对象实体Bean中都有id ,name的setter,getter方法了)
    再说我用logic:iterate 显示的时候怎么不显示这个异常,真是不明白啊
      

  6.   

    经我捣鼓,logic:iterate也可以分行显示,贴出来给大家分享。原来这么简单
    <logic:notEmpty name="rList" indexId="index">
      <logic:iterate id="lst" name="rList"> 
          <c:if test="${(index)%5 == 0}"> 
              <%index++;%>
              <br> 
          </c:if>
              <html:multibox property="rules"> 
                  <bean:write name="lst" property="id"/> 
              </html:multibox> 
                  <bean:write name="lst" property="name"/> 
          </td> 
          </tr> 
      </logic:iterate> 
    </logic:notEmpty>