我做的是导出world 用360浏览器导出word后,为什么Word文档里面多了小方框,好像是页面的__VIEWSTATE,页面上还有 "窗体顶端 ", "窗体底端 ",请问怎么消除这些东西啊??
private void ShowWord()
{
HttpContext.Current.Response.AppendHeader( "Content-Disposition ", "attachment;filename=xx.doc ");
HttpContext.Current.Response.Charset = "UTF-8 ";
HttpContext.Current.Response.ContentEncoding =System.Text.Encoding.Default;
HttpContext.Current.Response.ContentType = "application/ms-word ";
Page.EnableViewState =false;
System.IO.StringWriter tw = new System.IO.StringWriter() ;
System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter (tw);
this.Page.RenderControl(hw);
HttpContext.Current.Response.Write(tw.ToString());
HttpContext.Current.Response.End();
}
将页面中的<form runat="server">标签去掉试试
好的 我试试看
@朱晶晶: 我 试了下是不可以的,那样我的程序运行会报很多错的
@朱晶晶:
那试试将
HttpContext.Current.Response.Write(tw.ToString());
改为:
string output = tw.ToString(); output = Regex.Replace(output, "<input type=\"hidden\"[^/]+/>", string.Empty); HttpContext.Current.Response.Write(output);
@dudu: 里面没有隐藏控件,不是隐藏控件的原因
@朱晶晶: 那该怎么做啊,里面没有隐藏控件,也不是隐藏控件的原因
@朱晶晶: 你要找出这些小方框是哪些html标签引起的,然后过滤掉
@dudu: 根本就没有标签