后台传值进入前台

后台编写数据传入前台

适用于springboot+thymeleaf框架

	/**
	 * 新增项目回款
	 * (弹框)
	 */
	@GetMapping("/add/{payId}")
	public String add(@PathVariable("payId") String payId,ModelMap mmap,FdContract contract,Model model,FdContractItem fdcontractitem,FdContractPaymentr fdcontractpaymentr){	
		//在新增时获取  回款信息表 的内容
		FdContractPayment getPayment = contractPaymentService.selectContractPaymentById(payId);
		mmap.put("payment",getPayment);
		List<FdContract> ctList = contractService.selectContractList(contract);
		//设sum = 0
		int sum = 0;
		//将合同类   实例化一个新的对象
		FdContract con=new FdContract();
		//循环遍历合同表的数组
		for (int i = 0; i < ctList.size(); i++) {
			//如果数组为0,即自动选自第一个对象
			if (i==0) {			
				//将合同列表获取到的数组赋值给con对象
				con=ctList.get(i);
				//取出con实例化里面的contractId对象 且是根据合同明细表中合同明细里面的contractId查出一样的值  赋给con实例化列表
				List<FdContractItem> conList=contractItemService.selectContractItemByCid(con.getContractId());
				//如果实例化列表的大小不是0
				if (conList.size()!=0) {
					//遍历合同明细表的相同对象
					for (FdContractItem f : conList) {
						//将相同对象的产品总价相加得到sum值
						sum=sum+f.getProductSum();
					}
				}
			}
		}
		System.out.println(sum);
		model.addAttribute("ctList",ctList);
		//将sum值传入到前台页面
		model.addAttribute("contractSum",sum);
//		List cpList = contractPaymentService.selectContractPaymentList(contractPayment);
//		model2.addAttribute("cpList", cpList);
		return prefix + "/add";
	}

前台接收后台数据

        <div class="form-group">	
            <label class="col-sm-3 control-label">合同总额:</label>
            <div class="col-sm-8">
            	<!-- th:value="${contractSum}"是用来接收后台传来的值,直接显示在页面上的 -->
                <input id="contractSum" name="contractSum" readonly class="form-control" type="text" th:value="${contractSum}">
            </div>
        </div>

若遇到第一个值不回显,只显示0,可以在script里面添加以下代码:

//监听事件,保证contractId关联的回款金额可以及时回显
	    $(function(){
	    	$("#contractId").trigger("change");
	    });

你可能感兴趣的:(后台传值给前台,java,spring,boot,javascript)