jsp弹窗页面动态填充数据
场景:当前页面有“查看信息”按钮,点击后在当前页面出现弹窗,弹窗里引入了描述合同信息的jsp(因为合同信息太长,不可能放在弹窗里,单独做了一个合同信息的jsp页面),合同信息页面有部分数据需要在弹窗出现的时候动态查询填充进去。
js调用代码:
userManage.viewWinShow = function(i){
var data = userManage.grid.getData(i);
$("#clause2").load("http://localhost/test/viewContract.do?id="+data.id);
$('#viewWindow').modal({backdrop:"static",show:true });
$("#viewWindow").draggable({ handle: ".modal-header" });
}当前页面弹窗jsp代码:
<div class="modal hide fade modal-m" id="viewWindow" data-show="false" style="width:880px;height:560px;">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h3>信息</h3>
</div>
<div class="modal-body">
<div class="row-block">
<div id="clause2" role="tabpanel" class="table-responsive tab-pane fade in active" style="overflow:hidden;">
//此处通过js调用引入合同contractView.jsp页面
</div>
</div>
</div>
<div class="modal-footer">
<a href="#" class="btn" data-dismiss="modal" aria-hidden="true">关闭</a>
</div>
</div>java代码:
@RequestMapping("/viewContract")
public ModelAndView contractInfo(Integer id) {
return new ModelAndView("contractView.jsp",contractBo.getInfoMap(id));
}
@Service
public class ContractBo {
public Map<String, Object> getInfoMap(Integer id){
//...查询省略
Map<String, Object> map = new HashMap<String, Object>();
map.put("authName", "张三");
map.put("contractNo", "NS001");
map.put("endTime", "2019-12-31");
map.put("addTime", "2019-05-01");
map.put("validDate", "2019-06-01至2019-12-31");
return map;
}
}合同contractView.jsp页面:<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html dir="ltr" lang="zh-CN" xml:lang="zh-CN">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style>
body{font-family:SimSun;}
@page{size:A1;margin:0;}
</style>
</head>
<body>
<div class="word-wrap">
<div style="text-align:right;padding:10px;font-size:14px;">协议编号:${contractNo}</div>
<h2 class="title">合作协议</h2>
<h3 class="sec-title">甲方:xxxxxx有限公司</h3>
<h3 class="sec-title">
乙方:${authName}
</h3>
<div class="cap-section">
<p class="sub-title">第一条 定义与解释</p>
/.....省略
</div>
<div class="cap-section">
<p class="sub-title">第二条 合作内容</p>
/.....省略
</div>
<div class="cap-section">
<p class="sub-title">第三条 双方权利和义务</p>
/.....省略
</div>
<div class="cap-section">
<p class="sub-title">第四条 知识产权与保密条款</p>
/.....省略
</div>
<div class="cap-section">
<p class="sub-title">第五条 结算</p>
/.....省略
</div>
<p class="shut-down">以下无正文</p>
<table style="float:right;font-size:14px;">
<tr>
<td style="text-align:right;">协议有效期:</td>
<td>${validDate}</td>
</tr>
<tr>
<td style="text-align:right;">协议签署日期:</td>
<td>${addTime}</td>
</tr>
</table>
</div>
</body>
</html>