NSTC------前台导出

sdm_bill_pay_detail.js

/*--------- 命名空间 ---------*/
if (!nstc) var nstc = {};
if (!nstc.sdm) nstc.sdm = {};
if (!nstc.sdm.pay) nstc.sdm.pay = {};
if (!nstc.sdm.pay.detail) nstc.sdm.pay.detail = {};

nstc.sdm.pay.detail.doExcel = function(){
    var objExcel = document.all._ExcelText_;
    var table= document.getElementById("sdm_bill_pay_detail_list");
    var name = '票据明细';
    objExcel.value = table.outerHTML;
    document.all.form1.action = "SDM-Web-ROOT/pages/excel.jsp?fileName="+name;
    document.all.form1.submit();
    objExcel.value = '';
}

 

 

excel.jsp:

<%@page contentType="text/html;charset=GB2312"%>
<%@ page import="java.util.regex.*" %>
<jsp:useBean id="xml" scope="session" class="com.nstc.exportkit.excel.ExportExcel"/>

<%
    String name=(String)request.getParameter("fileName");
    String fileName="EXCEL.xls";
    if(name!=null&&!"".equals(name)){
        fileName=java.net.URLEncoder.encode(name+".xls", "utf-8");
    }
    System.out.println("导出文件名称:"+fileName);
    response.reset();
    response.setContentType( "application/vnd.ms-excel;charset=GB2312");
    response.setHeader("Content-disposition","attachment; filename=\"" + fileName + "\"");
    String table = request.getParameter("_ExcelText_");
    //bos.write(table);
    //bos.close();
    if(table.indexOf("</THEAD>")>0){
        String regex ="(<THEAD.*?>)";
        String regex1 ="(</THEAD>)|(<TBODY.*?>)";

        Pattern p1 = Pattern.compile(regex1,Pattern.CASE_INSENSITIVE);
        Matcher m1 = p1.matcher(table);
        String res1= m1.replaceAll("");

        Pattern p = Pattern.compile(regex,Pattern.CASE_INSENSITIVE);
        Matcher m = p.matcher(res1);
        String res= m.replaceAll("<TBODY>");

        String regex2 = "<BR>";
        Pattern p2 = Pattern.compile(regex2,Pattern.CASE_INSENSITIVE);
        Matcher m2 = p2.matcher(res);
        String res2 = m2.replaceAll("");

        String regex3 = "<INPUT.*?>";
        Pattern p3 = Pattern.compile(regex3,Pattern.CASE_INSENSITIVE);
        Matcher m3 = p3.matcher(res2);
        String res3 = m3.replaceAll("");

        String regex4 = "<SCRIPT LANGUAGE=.*?</SCRIPT>";
        Pattern p4 = Pattern.compile(regex4,Pattern.CASE_INSENSITIVE);
        Matcher m4 = p4.matcher(res3);
        String res4 = m4.replaceAll("");

        String regex5 = "<TABLE.*?>";
        Pattern p5 = Pattern.compile(regex5,Pattern.CASE_INSENSITIVE);
        Matcher m5 = p5.matcher(res4);
        String res5 = m5.replaceAll("<TABLE>");
        
        /*int i = res5.indexOf("<TR style=\"DISPLAY: none\"");
        String res14 = "";
        if(i>0){
            res14 = res5.substring(0, i);
            res14 += "</TBODY></TABLE>";
        }else{
            res14 = res5;
        }*/
        String regex14 = "<TR[^>]*?style=\"DISPLAY: none\"[\\s\\S]*?>[\\s\\S]*?</TR>";
        Pattern p14 = Pattern.compile(regex14,Pattern.CASE_INSENSITIVE);
        Matcher m14 = p14.matcher(res5);
        String res14 = m14.replaceAll("");
        
        
        String regex13 = "<TD[^>]*?style=\"DISPLAY: none\"[\\s\\S]*?>[\\s\\S]*?</TD>";
        Pattern p13 = Pattern.compile(regex13,Pattern.CASE_INSENSITIVE);
        Matcher m13 = p13.matcher(res14);
        String res13 = m13.replaceAll("");

        
        
        String regex7 = "<TR.*?>";
        Pattern p7 = Pattern.compile(regex7,Pattern.CASE_INSENSITIVE);
        Matcher m7 = p7.matcher(res13);
        String res7 = m7.replaceAll("<TR>");

        String regex8 = "<SPAN.*?>";
        Pattern p8 = Pattern.compile(regex8,Pattern.CASE_INSENSITIVE);
        Matcher m8 = p8.matcher(res7);
        String res8 = m8.replaceAll("");

        String regex9 = "</SPAN>";
        Pattern p9 = Pattern.compile(regex9,Pattern.CASE_INSENSITIVE);
        Matcher m9 = p9.matcher(res8);
        String res9 = m9.replaceAll("");

        String regex10 = "<LABEL.*?>";
        Pattern p10 = Pattern.compile(regex10,Pattern.CASE_INSENSITIVE);
        Matcher m10 = p10.matcher(res9);
        String res10 = m10.replaceAll("");

        String regex11 = "</LABEL>";
        Pattern p11 = Pattern.compile(regex11,Pattern.CASE_INSENSITIVE);
        Matcher m11 = p11.matcher(res10);
        String res11 = m11.replaceAll("");
        System.out.println(res11);
        xml.export(res11,response.getOutputStream());
    }else{
        String regex2 = "<BR>";
        Pattern p2 = Pattern.compile(regex2,Pattern.CASE_INSENSITIVE);
        Matcher m2 = p2.matcher(table);
        String res2 = m2.replaceAll("");

        String regex3 ="(<FONT.*?>)";
        Pattern p3 = Pattern.compile(regex3,Pattern.CASE_INSENSITIVE);
        Matcher m3 = p3.matcher(res2);
        String res3= m3.replaceAll("");

        String regex4 ="(</FONT>)";
        Pattern p4 = Pattern.compile(regex4,Pattern.CASE_INSENSITIVE);
        Matcher m4 = p4.matcher(res3);
        String res4= m4.replaceAll("");

        String regex5 = "<INPUT.*?>";
        Pattern p5 = Pattern.compile(regex5,Pattern.CASE_INSENSITIVE);
        Matcher m5 = p5.matcher(res4);
        String res5 = m5.replaceAll("");

        String regex6 = "<SCRIPT LANGUAGE=(.|\n|\r)*?</SCRIPT>";
        Pattern p6 = Pattern.compile(regex6,Pattern.CASE_INSENSITIVE);
        Matcher m6 = p6.matcher(res5);
        String res6 = m6.replaceAll("");

        
        
        String regex7 = "<TD[^>]*?style=\"DISPLAY: none\"[\\s\\S]*?>[\\s\\S]*?</TD>";
        Pattern p7 = Pattern.compile(regex7,Pattern.CASE_INSENSITIVE);
        Matcher m7 = p7.matcher(res6);
        String res7 = m7.replaceAll("");
        
        String regex14 = "<TR[^>]*?style=\"DISPLAY: none\"[\\s\\S]*?>[\\s\\S]*?</TR>";
        Pattern p14 = Pattern.compile(regex14,Pattern.CASE_INSENSITIVE);
        Matcher m14 = p14.matcher(res7);
        String res14 = m14.replaceAll("");
        
        String regex9 = "<tr.*?>";
        Pattern p9 = Pattern.compile(regex9,Pattern.CASE_INSENSITIVE);
        Matcher m9 = p9.matcher(res14);
        String res9 = m9.replaceAll("<TR>");
        System.out.println(res9);
        xml.export(res9,response.getOutputStream());
    }

%>
 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值