求在当前页面点按钮生成PDF,然后自动把该页面关闭的方法 在a页面点按钮生成一个PDF文件,生成之后想自动把a页面关闭,如何处理啊现在pdf生成之后,就是出现那个提示保存还是打开文件的确认框,他后面的代码就不执行了,this.dispose()什么的都不好使 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你新打开一个页面再去指向PDF文件.那样应该就可以了. 关闭客户端浏览器只能用客户端的javascript吧。<script language="javascript">function countdown(){ window.opener=null;//没有对话框,这句不可缺少 window.close(); }setTimeout("countdown()",3000);</script>但是javascript是在服务器端事件前执行。建议transfer到另一个网页,在这个网页的onload里面关闭浏览器。对于不出现提示,不要使用Response.write().直接将pdf保存到服务器端,就不应该有提示的。 PDF往客户端出力的代码如下所示(前面生成PDF的代码略)我想在下面这些代码执行完成之后,再把该页面关掉可是关闭页面的代码应该怎么加呢尝试在Response.End();之前或之后加入Response.Write("<script>window.opener=null;window.close();</script>");可是不起作用啊Response.ContentType = "application/pdf";Response.AddHeader("content-disposition", "attachment; filename=URIYOTEI" + svDate); Response.BinaryWrite(ms.ToArray());Response.End(); document.Close();//寫PDF結束 Response.ClearContent(); Response.ClearHeaders(); Response.ContentType = "application/pdf"; string strurl = "./test081111.pdf";//PDF路徑 Response.WriteFile(strurl); Response.Redirect(strurl); Response.Flush(); Response.Close();這樣寫會將本頁面轉到PDF頁 現在不想讓當前頁被跳轉,就像1樓說的,打開個新頁中打開PDF Response.Write("<script language=javascript>window.open('../DownLoad/pdfdownload.aspx?a=" + Login_id + "&b=" + Query_no + "');</script>");pdfdownload.aspp.cs中: protected void Page_Load(object sender, EventArgs e) { if (Request["a"] != null && Request["b"] != null) { string paths = Server.MapPath("../Temp/PDF/" + Request["a"].ToString() + Request["b"].ToString() + ".pdf"); Common.DownLoad.ResponseFile(System.Web.HttpContext.Current.Request, System.Web.HttpContext.Current.Response, paths, 1000000); } } 这也不失为一种好办法.先将文档对象关闭,然后转向PDF地址. asp:Label在加上associatedControlID属性后不能改变其width值 DataList删除数据,操作成功,但前台页不刷新数据 关于ASP.NET回调的一问题 求助asp.net的URL问题 请教一个关于通过模板生成html静态页的问题 生成静态页面还是采用缓存技术? 急,高分求:动态加载大类别和小类别 大家进来帮帮小弟,很简单的问题.多谢!! 关于类(在线等待) asp.net程序放在服务器时bin目录跟web.config必须放在跟目录下吗? 谁有没有ASP.NET后台线程的例子 看看这个 Ajax 异常,联动下拉框
那样应该就可以了.
function countdown()
{
window.opener=null;//没有对话框,这句不可缺少
window.close();
}
setTimeout("countdown()",3000);
</script>但是javascript是在服务器端事件前执行。建议transfer到另一个网页,在这个网页的onload里面关闭浏览器。对于不出现提示,不要使用Response.write().直接将pdf保存到服务器端,就不应该有提示的。
PDF往客户端出力的代码如下所示(前面生成PDF的代码略)
我想在下面这些代码执行完成之后,
再把该页面关掉
可是关闭页面的代码应该怎么加呢
尝试在Response.End();之前或之后加入
Response.Write("<script>window.opener=null;window.close();</script>");
可是不起作用啊
Response.ContentType = "application/pdf";Response.AddHeader("content-disposition", "attachment; filename=URIYOTEI" + svDate);
Response.BinaryWrite(ms.ToArray());Response.End();
Response.ClearContent();
Response.ClearHeaders();
Response.ContentType = "application/pdf";
string strurl = "./test081111.pdf";//PDF路徑
Response.WriteFile(strurl);
Response.Redirect(strurl);
Response.Flush();
Response.Close();
這樣寫會將本頁面轉到PDF頁
Response.Write("<script language=javascript>window.open('../DownLoad/pdfdownload.aspx?a=" + Login_id + "&b=" + Query_no + "');</script>");
pdfdownload.aspp.cs中:
protected void Page_Load(object sender, EventArgs e)
{
if (Request["a"] != null && Request["b"] != null)
{
string paths = Server.MapPath("../Temp/PDF/" + Request["a"].ToString() + Request["b"].ToString() + ".pdf");
Common.DownLoad.ResponseFile(System.Web.HttpContext.Current.Request, System.Web.HttpContext.Current.Response, paths, 1000000);
}
}
这也不失为一种好办法.先将文档对象关闭,然后转向PDF地址.