2 river gg river_gg 于 2017.09.13 10:35 提问

文件下载使用target="_blank"在新页面打开,如何自动关闭这个页面

小白虚心请教,场景如下:文件下载使用a标签的target="_blank"属性在新页面打开下载链接,如果能正常下载生成zip文件会自动关闭,但如果给定某个路径不存在文件的话,新打开的空白页面就不能自动关闭了,请问该如何处理。。。最好能给串代码,谢谢啦


 <a href="${ctx}/file/${orderVO.orderOid }/download?path=survey_B_B04&filename=***"
    class="imgage-download ace-icon fa fa-download bigger-110" target="_blank"></a>

2个回答

showbo
showbo   Ds   Rxr 2017.09.13 11:16
已采纳
 download那个页面判断文件不存在输出下面的js内容关闭页面就行了
<script>window.close()</script>
river_gg
river_gg 回复showbo: 还是不太明白。download那个页面是指那个空白页面么?这个页面是target标签生成的,页面运行的就是下载的请求。。写不了任何东西啊。。(很多不会,希望大佬有点耐心哈)
10 个月之前 回复
showbo
showbo download那个页面
10 个月之前 回复
showbo
showbo 回复river_gg: 服务器端输出我贴出来的代码就行了
10 个月之前 回复
river_gg
river_gg 你好,target="_blank"这个是通过href的地址自动打开的空白页面,我应该在什么地方写呢,
10 个月之前 回复
Young_Gao
Young_Gao   2017.09.25 15:28
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
打开新窗口的几种方式及target=_blank指定窗口名称
打开新窗口的几种方式及target=_blank指定窗口名称   打开新窗口的几种方式: 1.form提交到新窗口       ......   2.链接中打开新窗口 打开新窗口   3.按钮打开新窗口   使用 target="_blank"将每次都打开新窗口,若希望同一功能的页面在同一窗口中打开,可通过指定窗口名的方式,方法:只需将target="_blank"
设置HTML:target=_blank,在新窗口中打开链接
项目中在子界面使用window.opener.document,获得父界面id="reportInfoId"对应的隐藏的input标签的value 问题:       父界面的id="reportInfoId"对应的隐藏的input标签的value,设置成功;可是在子界面使用       var param = $("#reportInfoId",window.opener.document
在现有窗口中打开新窗口,即target_blank的问题
        在网页中,经常碰到这种情况:点击某些链接,就会弹出新窗口,原来的页面部改变,而有些链接,就在原窗口上打开新的链接,原窗口没有了,被覆盖了。这个是为什么呢?怎么实现的呢?        target=_blank,这个标签,就是解决这个问题的。是将基本链接的目标框架都改为新页打开,即弹出新窗口。、等很多标签都支持target="black"的属性,可以在这样的标签里单独做设置,比
target="_blank" 表示在新窗口中打开页面
target的作用,href链接打开的方式
关于html 的a标签的target="__blank ",出现的问题
之前做的项目中的a标记中的target="__blank ",我们跳转了页面,发现有时候打开的新页面会修改旧页面的地址,经过我的查看,从https://my.oschina.net/jsan/blog/741317 与https://www.mokeyjay.com/archives/1344发现,这是一个浏览器的漏洞,如何解决这个问题,需要对a标记需要target="__blank "的链接中
Android webView 打开新窗口的模式
最近自己在开发广告sdk这个项目,在对接其他第三方平台广告时,遇到了一个问题,就是第三方平台广告返回给我们的数据广告是一个HTML文件,自己用纯代码写了一个布局,如下图: 我是通过webview的形式展现出来的,这是一个插屏广告,由于插屏广告不是全屏的,所以点击广告时,webview里面的超链接广告不能全屏,查看了一下第三方广告平台返回给我们的HTML文件元素是target=”_top”,顺便看
WebView爬坑之旅2--a标签是target="_blank"时创建新窗口
如果网页里链接的a标签是target=”_blank”,而碰巧你的WebView又没有处理,那这个时候就会出现狂点链接/button页面却无动于衷的情况,给人想砸手机的感觉… 好了,解决方案其实也挺简单的,继承WebChromeClient,重写onCreateWindow是关键,请看代码: /** * 当网页里a标签target="_blank",打开新窗口时,这里会调用
<A HREF="" target="_BLANK">打开的新窗口大小的控制
方法一:    ok 你知道为什么慢吗?       是因为open    需要重新构建一个窗口,       你直接打开,就是在原有的窗口里工作,,当然快啦 还可以像hotkeys=no,left=400,top=300这样控制新窗口中的热键是否有效,距离浏览器原点(左上角)的距离。还有,参数尽量用yes和no,不要用0或1,因为javascript有版本问题,考虑一下兼容性吧^0^
提交一个from的时候,struts2处理完返回结果打开一个新页面,用target="blank"
<br />提交一个from的时候,如果需要在struts2处理完返回结果打开一个新页面,用target="blank"<br /><s:form action="batchSearchImportMember.action" id="pageForm" name="pageForm" method="post" target="blank">
js 控制表单提交,target=_blank,窗口被拦截
表单新开窗口提交正常,但是用js提交时,会弹出拦截信息 浏览器会拦截窗口,是把窗口当成js弹出广告,造成的原因是如果是用户主动触发,一般不会拦截,用js触发的,一般都会拦截。 $.post("/trade/addOrder",query,function(responseData){ var json_data = eval("("+respons