日期:2014-05-16  浏览次数:20916 次

window.open 出现的怪事,跪求高手相助
某段程序中弹出一个窗口,生成EXCEL文件,不同的弹开窗口的方式结果却不同,百思不得其解,跪求高手相助。
 <input type=button value="导出至EXCEL" nclick='window.open "toexcel.asp","","top=300,left=400,width=400,height=200")' style="float: right" ></font></b>
<a href="toexcel.asp">导出至EXCEL</a>   
存在问题,第一行是通过按钮方式弹开窗口,执行文件toexcel.asp,第二行是通过文本超链接的方式执行toexcel.asp。
用按钮弹开窗口存在的问题是:只要执行过一些导出操作后,第二次执行同样的导出操作, 虽提示导出成功,但实际上没有导出,调用的还是原来导出的文件(经观察,即使把toexcel.asp文件删除了,还提示成功,实际上根本没有调用toexcel.asp文件)。这样如果两次查询的条件不一样时,导出的结果仍然是原来的数据。只有把浏览器关了后,重启浏览器进入系统,方可按新的查询条件导出数据。但通过第二种方式文本超链接方式就不存在这个问题。我想用按钮实现此功能。却百思不得其解。请指点。……       

------解决方案--------------------
加上时间戳试试,可能缓存问题

 <input type=button value="导出至EXCEL" onclick='window.open("toexcel.asp?"+new Date().getTime(),"","top=300,left=400,width=400,height=200")' style="float: right" >

------解决方案--------------------
这个问题很可能是因为你的页面缓存问题,你应该onclick="location.href='xxx.asp?ver='+new Date()"