• JSP JSTL日常使用集锦


    根据自己使用不断积累更新

    一、JSTL 使用 c:forEach 累加变量值  

    使用举例如下:

                <tbody>
                    <c:set value="0" var="amountTotal"/>
                    <c:forEach items="${medicine.medicineInformationVos}" var="medicine">
                    <tr>
                        <td>${medicine.code }</td>
                        <td>${medicine.name }</td>
                        <td>${medicine.amount }</td>
                    </tr>
                    <c:set value="${amountTotal+medicine.quantity}" var="amountTotal"/>
                    </c:forEach>
                    <tr>
                        <td></td>
                        <td></td>
                        <td>${amountTotal}</td>
                    </tr>
                </tbody>

    最后一行tr的最后一个td是统计上面循环出来的medicine.amount的总和。

    二、jstl对数字的一些格式化操作

    可参考   <fmt:formatNumber>标签 的一些用法 :

    //比如对传进来的浮点数字${total},进行只保留两位小数操作
    <fmt:formatNumber type="number" value="${total}" maxFractionDigits="2"/>

     三、forEach循环每行两和三列的显示方法

    1.每行两列

    <c:forEach  items = " ${list} " varStatus = " status " var="medicine"> 
     <c: if test = " ${status.count%2==1} "> 
     <tr> 
     </c: if> 
     <td>${medicine.name }</td> 
     <c: if test = " ${status.count%2==0} "> 
     </tr> 
     </c: if > 
     <c:set var = " v_count " value = " ${status.count} "/> 
     </c:forEach> 
     <c:if test = " ${v_count%2==1} "> 
     <td></td> 
     </tr> 
     </c: if>

    2.每行三列

    <c:forEach  items="${list}" var="medicine" varStatus="status"> 
    <c:if test="${status.count%3==1}">
    <tr>
    </c:if> 
    <td>${medicine.name }</td>
    <c:if test="${status.count%3==0}">
    </tr>
    </c:if>
    <c:set var ="v_count" value="${status.count}"/>
    </c:forEach>
    <c:if test="${v_count%3==1}">
    <td></td>
    <td></td>
    </tr>
    </c:if>
    <c:if test="${v_count%3==2}">
    <td></td>
    </tr>
    </c:if>  

    四、EL表达式 获取list长度/不用循环

    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
    <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>

    ${fn:length(list名字)}   //list的长度
    <c:if test="${fn:length(list名字)>1}">
      中间该干嘛干嘛
    </c:if>

    五、不用循环,EL在List中直接获取第一项的内容

    ${list[0].属性}
  • 相关阅读:
    net core3.1 + electron 9.31.2 项目初始化
    DEV Express控件VScorllBar控件使用
    背包系统学习笔(tu)记(cao)
    C#应该掌握的一些东西
    服务器之间数据库拷贝
    photoshop AdobeCS6分享
    Random的实现原理
    C#利用System.Net发送邮件(带 抄送、密送、附件、html格式的邮件)
    jQuery validate验证控件remote缓存bug
    litrpa1.4版本正式发布了
  • 原文地址:https://www.cnblogs.com/kangby/p/7735387.html
Copyright © 2020-2023  润新知