将aspx页面导出成word文档 如题:怎样将aspx页面导出成word文档 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 说个思路,先把.aspx解析成html,在把html内容输出到word文档里面。 保存为html,然后在把html数据转换为word,至于怎么转换,楼 主网上搜一下就有很多的解决方案 public void ExpertControl(System.Web.UI.Control source, string doctype, string docName) { Response.Clear(); Response.Buffer = true; Response.Charset = "GB2312"; Response.ContentEncoding = Encoding.UTF8; //设置Http的头信息,编码格式 if (doctype == "excel") { //Excel Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(docName, System.Text.Encoding.UTF8) + ".xls"); Response.ContentType = "application/ms-excel"; } if (doctype == "word") { //Word Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(docName, System.Text.Encoding.UTF8) + ".doc"); Response.ContentType = "application/ms-word"; } //关闭控件的视图状态 source.Page.EnableViewState = false; //初始化HtmlWriter StringWriter writer = new StringWriter(); HtmlTextWriter htmlWriter = new HtmlTextWriter(writer); source.RenderControl(htmlWriter); //输出 Response.Write(writer.ToString()); Response.End(); } 报错啊 不过在page里加了这句就行了EnableEventValidation="false" 但是导出来的数据很乱 有的图片显示不出来 JS 导出Excel,Word //导出Excelfunction AllAreaExcel() { var oXL = new ActiveXObject("Excel.Application"); var oWB = oXL.Workbooks.Add(); var oSheet = oWB.ActiveSheet; var sel=document.body.createTextRange(); sel.moveToElementText(export1); sel.select(); sel.execCommand("Copy"); oSheet.Paste(); oXL.Visible = true; } //导出Word function AllAreaWord() { var oWD = new ActiveXObject("Word.Application"); var oDC = oWD.Documents.Add("",0,1); var oRange =oDC.Range(0,1); var sel = document.body.createTextRange(); sel.moveToElementText(export1); sel.select(); sel.execCommand("Copy"); oRange.Paste(); oWD.Application.Visible = true; } 注意:export1 是导出的DIV 的id ,如 <div id="alove" >...导出范围......</div> ,export1的值就是 "alove" .错误处理:"automation服务器不能创建对象”安全模式设置成“中”,如果javascript脚本中报这个错误,还应将IE的安全设置“不允许运行未标记为安全的activeX控件”启用即可。 注意如果您将相应的网站设成“受信任的站点”,必须对“受信任的站点”进行相应的IE安全设置,此时如果对“Internet”IE设置将是徒劳 的。 我自定义安装的vs2008,装好后发现没有asp.net website 浏览器设置了代理地址,VS启动调试,ASP.NET页面无法查看。怎么办? IIS设置ASP.net版本问题 关于数据浏览权的表设计问题(比较麻烦) 下面2种画图方法 那种效率高些? 请问如何将int类型转换为string类型 问下这个js+div+css叫什么名字? excel 转pdf 问题 TextBox防止粘贴事件 .net中图片加文字后描边如何处理? 在TreeView中 只能选中一个节点的问题! ewebeditor文本编辑器上传漏洞问题
{ Response.Clear();
Response.Buffer = true;
Response.Charset = "GB2312";
Response.ContentEncoding = Encoding.UTF8;
//设置Http的头信息,编码格式
if (doctype == "excel")
{
//Excel
Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(docName, System.Text.Encoding.UTF8) + ".xls");
Response.ContentType = "application/ms-excel";
}
if (doctype == "word")
{
//Word
Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(docName, System.Text.Encoding.UTF8) + ".doc");
Response.ContentType = "application/ms-word";
}
//关闭控件的视图状态
source.Page.EnableViewState = false;
//初始化HtmlWriter
StringWriter writer = new StringWriter();
HtmlTextWriter htmlWriter = new HtmlTextWriter(writer);
source.RenderControl(htmlWriter);
//输出
Response.Write(writer.ToString());
Response.End();
}
//导出Excel
function AllAreaExcel()
{
var oXL = new ActiveXObject("Excel.Application");
var oWB = oXL.Workbooks.Add();
var oSheet = oWB.ActiveSheet;
var sel=document.body.createTextRange();
sel.moveToElementText(export1);
sel.select();
sel.execCommand("Copy");
oSheet.Paste();
oXL.Visible = true;
}
//导出Word
function AllAreaWord()
{
var oWD = new ActiveXObject("Word.Application");
var oDC = oWD.Documents.Add("",0,1);
var oRange =oDC.Range(0,1);
var sel = document.body.createTextRange();
sel.moveToElementText(export1);
sel.select();
sel.execCommand("Copy");
oRange.Paste();
oWD.Application.Visible = true;
} 注意:export1 是导出的DIV 的id ,如 <div id="alove" >...导出范围......</div> ,export1的值就是 "alove" .
错误处理:"automation服务器不能创建对象”安全模式设置成“中”,如果javascript脚本中报这个错误,还应将IE的安全设置“不允许运行未标记为安全的activeX控件”启用即可。
注意如果您将相应的网站设成“受信任的站点”,必须对“受信任的站点”进行相应的IE安全设置,此时如果对“Internet”IE设置将是徒劳
的。