HTML頁面的導出,包括Excel和Word導出


//導出到Excel --- 全部導出,可以設置一些隱藏進行導出
protected void btnExport_Click(object sender, EventArgs e)
    {
        div_table.InnerHtml = hfdHtml.Value;//將頁面內容重新放回去,因為后台按鈕會沖掉已經生成的頁面
        btnExport.Visible = false;//導出按鈕設置為不可見
        string strFileName = DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls";
        System.Web.HttpContext.Current.Response.Clear();
        System.Web.HttpContext.Current.Response.ClearHeaders();
        System.Web.HttpContext.Current.Response.Buffer = false;
        System.Web.HttpContext.Current.Response.ContentType = "application/octet-stream";
        System.Web.HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=" + strFileName);
    }

//導出word操作,本實例可以導出html樣式

protected void btnExport_Click(object sender, EventArgs e)
    {
        divAdd.Visible = false;//需要隱藏的div
        string strFileName = DateTime.Now.ToString("yyyyMMddHHmmss") + ".doc";
        Response.Buffer = true;
        System.Web.HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=" + strFileName);
        Response.ContentType = "application/ms-word";
        HttpContext.Current.Response.Charset = "UTF-8";
        this.EnableViewState = false;//初始化HtmlWriter
        System.IO.StringWriter writer = new System.IO.StringWriter();
        System.Web.UI.HtmlTextWriter htmlWriter = new System.Web.UI.HtmlTextWriter(writer);
        this.RenderControl(htmlWriter);//輸出
        HttpContext.Current.Response.Write(writer.ToString()); 
        HttpContext.Current.Response.End();
    }

另外在前台要加上  ValidateRequest="false" EnableEventValidation="false"

注意:在導出時,出現圖片不能顯示,記得要改為絕對路徑


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM