• jquery使用模板动态添加html元素,相当于jstl里的foreach


    jquery使用模板动态添加html元素

    1、开发的时候有时候要循环加载list,通常我们在页面使用<c:foreach>标签循环加载后台传过来的数据。

    <c:forEach items="${srModel.bplbatchplanitem}" var="items" varStatus="s">
                            <tr>
                            <td><input name="itemId" type="checkbox" value="${items.id}" mtype="${items.materialType}" ></td>
                            <td>${items.attr1}</td> 
                            <td>${items.materialCode}</td>
                            <td>${items.materialType}</td>
                            <td>${items.materialName}</td>
                            
                            <td>${items.specification}</td>
                            <td>${items.normalDrawing }</td>
                            <td>${items.unit}</td>
                            <fmt:formatNumber pattern="#.########" value="${items.bidNumber}" var="bidNumber"/> 
                            <td>${bidNumber}</td>
                            <fmt:formatNumber pattern="#.########" value="${items.budgetPrice}" var="budgetPrice"/> 
                            <td>${budgetPrice}</td>
                            <fmt:formatNumber pattern="#.########" value="${items.budgetFreightPrice}" var="budgetFreightPrice"/> 
                            <td>${budgetFreightPrice}</td>
                            <fmt:formatNumber pattern="#.########" value="${items.budgetInstallPrice}" var="budgetInstallPrice"/> 
                            <td>${budgetInstallPrice}</td>
                            <fmt:formatNumber pattern="#.########" value="${items.budgetTotalPrice}" var="budgetTotalPrice"/> 
                            <td>${budgetTotalPrice}</td>
                            <td>${items.deliveryPlace}</td>
                            <td>${items.consignee}</td>
                            <td>${items.deliveryStatus}</td>
                            <td>${items.deliveryConditions}</td>
                            <td>${items.deliveryDate}</td>
                            <td>${items.remarks}</td>
                            </tr>
                            </c:forEach>

    但有时候我们的数据需要用JS来加载,就不能再使用<c:foreach>了。

    解决方法$.format()方法。

    2、需要现在jsp里添加一个隐藏的模板。

    3、获取模板,然后填充占位符。占位符会按{0}{1}...顺序填充,可多次出现。

    var temp=$.format($("#template1").val());
     $("#tbody1").append(temp("qw","12","ererer","rtrt","1212121","555555555"));//添加元素
  • 相关阅读:
    [湖南集训]谈笑风生
    【SCOI2010】序列操作
    ●BZOJ 3994 [SDOI2015]约数个数和
    ●BZOJ 3309 DZY Loves Math
    ●UOJ 21 缩进优化
    ●BZOJ 2693 jzptab
    ●BZOJ 2154 Crash的数字表格
    ●BZOJ 3529 [Sdoi2014]数表
    ●2301 [HAOI2011] Problem b
    ●BZOJ 2820 YY的GCD
  • 原文地址:https://www.cnblogs.com/zhanglixuan/p/8583532.html
Copyright © 2020-2023  润新知