问题描述
急急急。。。。导出excel页面怎么刷新!!try{System.IO.FileStreamfs=System.IO.File.OpenRead(_FileName);byte[]FileData=newbyte[fs.Length];fs.Read(FileData,0,(int)fs.Length);Response.Clear();Response.AddHeader("Content-Type","application/notepad");stringFileName=System.Web.HttpUtility.UrlEncode(System.Text.Encoding.UTF8.GetBytes(_FileName));Response.AddHeader("Content-Disposition","inline;filename="+System.Convert.ToChar(34)+FileName+System.Convert.ToChar(34));Response.AddHeader("Content-Length",fs.Length.ToString());Response.BinaryWrite(FileData);fs.Close();System.IO.File.Delete(_FileName);Response.Flush();Response.End();returntrue;}catch(Exceptionex){ex.Message.ToString();returnfalse;}
解决方案
解决方案二:
判断下返回的是否为true是的话Response.Redirect("Index.aspx");如果是在JS的话windows.location.href='index.aspx';
解决方案三:
导出的同时就不能刷新。如果你要刷新,那么你就不用要在当前页面导出,而是使用RegisterStartupScript方式注册一个脚本,在客户端打开另外一个aspx/ashx页面去导出(使用url参数方式给导出页面传必要的参数)。
解决方案四:
当前页面无法刷新,其实道理很简单,你都设置Response.AddHeader("Content-Type","application/notepad");Response.AddHeader("Content-Disposition","inline;filename="......
浏览器也不会把收到的消息当作页面刷新!