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

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  配件详情部分--%>


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值