您的位置:首页 > Web前端 > JQuery

jQuery通过json的方式响应map的list对象集合,并以table的形式展示

2016-12-16 17:00 555 查看
controller收到ajax请求,处理完成后作出响应,返回map的list对象集合,

@RequestMapping(value = "/getPartByPurchBillId")
@ResponseBody
public Map<String,Object> getPartByPurchBillId(@RequestParam(value="purchBillId") Integer purchBillId){
Map<String, Object> map = new HashMap<>();
List<RequirePartListBean> requirePartListBeans = purchaseService.getPartByPurchBillId(purchBillId);
map.put("requirePartListBeans", requirePartListBeans);
return map;
}

但是因为是在JavaScript中,不能使用<c:foreach />进行遍历,所以使用jQuery方式遍历$.each(),jsp页面如下:
方法被调用时,ajax发送请求,

<script>
function showPartDetails(purchBillId){
var tbody = "";
$.ajax({
type:"post",
url:"${rootPath }/depot/purchase/getPartByPurchBillId?purchBillId="+purchBillId,
success : function(data){
$.each(data.requirePartListBeans, function (n, value) {
//n指索引,requirePartListBeans指valuemap集合中放的list,value指list遍历的对象
//partNumber、partQuantity指对象的属性
   var trs = "";
trs += "<tr><td>" + (n+1) + "</td><td>" + value.partNumber + "</td> <td>" + value.partName+ "</td> <td>" + value.partQuantity+ "</td></tr>";
tbody += trs;
});
$("#partList").html(tbody);//这里动态的为tbody添加内容
layer.open({//这里使用layer前端框架,也可以不用
type: 1,
title: false,
closeBtn: 0,
shadeClose: true,
content: $("#showDetail")//打开下面的div,弹窗,遍历的内容进行展示
});

}
});
}
</script>

<%--配件详情部分 --%>
<div id="showDetail" style="display: none;" class="layui-layer layui-layer-dialog layer-anim dialog" type="dialog" times="3" showtime="0" contype="string" >
<div class="layui-layer-title" style="cursor: move;">配件详情</div>
<div id="" class="layui-layer-content">
<table class="table table-hover">
<thead>
<tr>
<th>#</th>
<th>配件编号</th>
<th>配件名称</th>
<th>配件数量</th>
</tr>
</thead>
<tbody id="partList">
</tbody>
</table>
</div>
<span class="layui-layer-setwin">
<a class="layui-layer-ico layui-layer-close layui-layer-close1" href="javascript:;"></a>
</span>
<div class="layui-layer-btn layui-layer-btn-" >
<a class="layui-layer-btn0" >确定</a>
</div>
<span class="layui-layer-resize"></span>
</div>
<%--end 配件详情部分--%>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐