js下载文件;下载方式<a> 和href方式;已经中文乱码问题

一:先看看各种下载方式:

   1. A 标签的方式 : <a target="_Blank" href="<%=basePath %>html/document/GJB/CYBDXZ/文件名.doc">文件名.doc</a>

   2. href方式:   function go (name){
                                             var url =  encodeURIComponent(name);
                                             var strToUri = "<%=basePath %>html/document/GJB/ZYZN/"+url;
                                              location.href= strToUri;
                                      }

二:再来说说文件名中文乱问题

   直接写中文名容易乱码;所以最好不写中文名;直接用字母替代;数据库存文件名时可以设置两个字段;一个中文名;一个英文名;显示用中文名;下载就用英文名

    解决方式:encodeURIComponent

             进行URI编码;进行编码后就变成:

              http://localhost:8080/ehr/html/document/GJB/ZYZN/201409%E7%94%9F%E8%82%B2%E9%99%A9%E6%8A%A5%E9%94%80%E6%8C%87%E5%8D%97.doc

               这样的地址就能解析了

   注意:这里必须要配置tomcat的 server.xml 文件:文件位置  D:\apache-tomcat-7.0.22\conf\server.xml

    <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" URIEncoding="UTF-8" />    //在这里加上  URIEncoding="UTF-8"

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。