zoukankan      html  css  js  c++  java
  • .Net直接将Web页面table导出到Excel

          项目管理系统有个统计表需要导出到Excel表中。常用的方法是在后台C#代码查询数据再写入Excel表中最后保存在目标路径。

          为减轻数据库服务器的压力和保持页面的样式,能否直接将页面的表格直接导出到Excel表呢?答案是肯定的。方法如下:

    <script type="text/javascript">

    function ExportToExcel() {
    document.getElementById("<%=hidExport.ClientID%>").value = document.getElementById("divExport").innerHTML;
    }
    </script>

    <asp:HiddenField ID="hidExport" runat="server" />

    <asp:Button ID="btnToExcel" runat="server" Text="导出Excel" Height="30px" OnClientClick="return ExportToExcel();" OnClick="btnToExcel_Click" />

    <div id="divExport">
    <table>
    <tbody >
    内容
    </tbody>
    </table>

    protected void btnToExcel_Click(object sender, EventArgs e)
    { 

    string fileName = DateTime.Now.ToString("yyyyMMddHHmmssfff") + ".xls";
    fileName = System.Web.HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8);
    Response.Clear();
    Response.Buffer = true;
    Response.ContentType = "application/vnd.ms-excel.numberformat:@";
    this.EnableViewState = false;
    Response.Charset = "UTF-8";
    Response.ContentEncoding = System.Text.Encoding.UTF8;
    Response.AppendHeader("Content-Disposition", ("attachment;filename=" + (fileName.ToLower().EndsWith(".xls") ? fileName : fileName + ".xls")));
    Response.Write(this.hidExport.Value);
    Response.End();

    }

  • 相关阅读:
    [C++] Const Summary (mind map)
    [C++] Operator Overload
    [C++] Deep copy ,Shallow copy, copy constructor,"="
    [C++] CONST 2
    [C++] * Basic and Class
    《Javascript权威指南-第6版》
    Bootstrap源码分析系列之初始化和依赖项
    Bootstrap源码分析系列之整体架构
    CSS模糊效果
    韩顺平php从入门到精通
  • 原文地址:https://www.cnblogs.com/johsan/p/6567247.html
Copyright © 2011-2022 走看看