日期:2014-05-17  浏览次数:20679 次

a标签文件下载链接,怎样避免直接打开文件?
一个下载链接释放到客户端是a标签,其href属性是文件的路径,如果是txt或jpg这种文件,点击链接不是弹出下载框而是直接在窗口显示,如果是doc或其他文件,就会弹出下载框。怎样才能使所有文件点击都能弹出下载框而不直接打开呢?

------解决方案--------------------
如果是iis 服务器, 可以配置网站的mime 类型 , txt 和 jpg 映射到 application/octet-stream ,或者application/x-msdownload。

不知道可行不,没试过 ,不过肯定是这个思路,另外好像不同浏览器的处理也不尽相同 

------解决方案--------------------
你应该这样下载
<a href="down.aspx?file=xxx.txt"
------解决方案--------------------
会直接打开是因为我们浏览器可以识别 对于.jpg和.txt文件是浏览器识别的文件
一种简单的做法是 更改他们的后缀名下载 比如把.jpg改成.jpg.重命名  这样就可以直接<a href="123.jpg.重命名"></a>
------解决方案--------------------
//通知浏览器下载文件而不是打开
            Response.AddHeader("Content-Disposition", "attachment;  filename=a.txt", System.Text.Encoding.UTF8));
            Response.BinaryWrite(bytes);
            Response.Flush();
            Response.End();