字段"/>
表格生成excel,动态选择要导出的字段
主要的效果是
1.因为特殊要求需要,查询完之后再进行导出,也就是接口中除了text和response,其他都是条件字段。
2.点击导出,出现选择的相应字段也就是接口中接收的text。
3.选择字段只有点击确定,进行导出。
1. html前端要求
//这里给的是一个点击事件,点击按钮发送请求
<button type="button" class="btn btn-small btn-primary" data-dismiss="modal" onclick="outExcel()">确认</button>
//传递的参数来源不同function outExcel() {//此处是选中要导出的字段@1var obj=[];$(".sys_spec_text .active").each(function () {var text = $(this).text();obj.push(text);})//此处是input框中的内容var startTime= $("#startTime").val();var endTime=$("#endTime").val();//此处是下拉框选中的内容var dProjectId= $('#projectId option:selected').val();var dContract=$('#contractId option:selected').val();//此处是span中选中的内容@2if(condition=="" ||condition==null ){var theMonth=null;}else{theMonth=condition;}var dType=$('#dType option:selected').val();//请求后端接口,因为之前接口的原因,不方便将参数封装到数组中,所以都单个传过去了,这里要注意多个参数的拼接location.href = "/dangerinformaticas/outExcel?text=" +obj+"&startTime="+startTime+"&endTime="+endTime+"&dProjectId="+dProjectId+"&dContract="+dContract+"&theMonth="+theMonth+"&dType="+dType;}
在页面中的代码块
@1. 选中要勾选的字段
<ul class="sys_spec_text clear" style="text-align: center"><li ><a>项目</a></li><li ><a>合同段</a></li><li ><a>隐患编号</a></li><li ><a>隐患描述</a></li><li ><a>风险级别</a></li><li ><a>排查类型</a></li><li ><a>安全/质量</a></li><li ><a>隐患条目内容</a></li><li ><a>提交人</a></li><li ><a>提交人单位</a></li><li ><a>提交时间</a></li></ul>
@2.span 中选中元素
<span class="m-l-large time-btn"><label class=" form-control m-r-mini select-on" name="0" >本月</label><label class=" form-control btn-small m-r-mini" name="1" >本季度</label><label class=" form-control btn-small m-r-large" name="2" >本年</label></span>`var condition;$(".time-btn .form-control").click(function () {$(this).addClass("select-on").siblings().removeClass("select-on");condition = $('.select-on').attr("name");
});
2. 后端代码
controller层
/*导出excel字段接受要进行要和实体类的类型一一对应*/@GetMapping("/outExcel")public void exportToExcel(HttpServletResponse response,String text,String dUnitId,String startTime,String endTime,String dProjectId,String dContract,String theMonth,String dType) throws Exception {//参数中HttpServletResponse response,是为了下载的位置不是固定的,统一存到服务器端的位置//特殊情况的判断(本月、本季度、本年)String theQuarter = null;String theYear = null;if(theMonth!=null ||theMonth!="" ){if(
更多推荐
表格生成excel,动态选择要导出的字段
发布评论