springMVC框架在js中使用window.location.href请求url时IE不兼容问题解决

时间:2022-02-22 12:19:57

是使用springMVC框架时,有时候需要在js中使用window.location.href来请求url,比如下面的路径:

window.location.href = ‘forecast/download.do’

在谷歌浏览器下,实际请求的路径是:项目名/forecast/download.do

springMVC框架在js中使用window.location.href请求url时IE不兼容问题解决

而在IE下访问时在中间多了好几层文件夹:

springMVC框架在js中使用window.location.href请求url时IE不兼容问题解决

造成这种情况的原因是各种浏览器在使用window.localtion.href请求相对路径时处理方法不同

IE是从当前当前路径开始跳转

谷歌是从根目录开始跳转

所以最好的方法是使用绝对路径,让他们都从根目录开始跳转:

<script type="text/javascript">
function getPath(){
var path = "<%=path%>";
return path;
}
</script>

	<script type="text/javascript">
var path = getPath()+"/";
var url = path+'forecast/download'
window.location.href = encodeURI(url);
</script>

版权声明:本文为博主原创文章,未经博主允许不得转载。