window.location.replace无效(window location)
大家好,小小来为大家解答以下问题,window.location.replace无效,window location很多朋友还不知道,现在让我们一起来看看吧!
1、 JS中设置的window.location.href跳转无效怎么办?
2、 出现的问题如下:
3、 原因是标签A的href跳转会在window.location.href设置的跳转之前执行,如果是表单,会先执行表单提交。提交后,它不再位于当前页面。因此,window.location.href无效。
4、 解决方案1
5、 在js函数中添加“window.event.returnValue=false”,如图。这个属性放在提交表单的onclick事件中,表单不会在这个click事件中提交。如果它被放置在一个超链接中,那么在这个click事件中将不会执行hyperlink href属性。改成以下代码后,window.location.href跳转成功。
6、 解决方案2
7、 在click事件中,onclick='checkUser()'变成onclick=' return check user();'并在checkUser中返回false在这种情况下,标签的href将不被执行。这样window.location.href就可以顺利跳转了。代码如下:
8、 解决方案3
9、 如果是表单体提交,也可以把summit改成按钮调用js提交,这样window.location.href也会在js提交summit之前执行一次成功的跳转。如下所示:
10、 编者按:下面是JS中设置window.location.href不能跳转的原因,以及JS中设置window.location.href不能跳转时的三种解决方法。
今天本文讲解到此结束,希望对你有所帮助。