全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

javascript 中设置window.location.href跳转无效问题解决办法

javascript 中设置window.location.href跳转无效问题解决办法

问题情况

JS中设置window.location.href跳转无效

代码如下:

<script type="text/javascript"> 
  function checkUser() 
{  
   if(2!=1){ 
    window.location.href="login.jsp" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ;  
   } 
} 
 </script>  
 
<div class="extra"> 
     <a class="ui blue right floated primary button" onclick="checkUser()" href="bookConfirm?userId=${account.id}&roomNum=${room.roomNum}&stime=${stime }&etime=${etime }" rel="external nofollow" rel="external nofollow" >确认预订</a> 
      </div> 

原因是 a标签的href跳转会执行在window.location.href设置的跳转之前:

如果是表单form的话  也会先执行form提交。

提交之后 就已经不在当前页面了。所以 window.location.href无效。

解决方法一

在js函数中加上

window.event.returnValue=false

这个属性放到提交表单中的onclick事件中在这次点击事件不会提交表单,如果放到超链接中则在这次点击事件不执行超链接href属性。

改成如下代码后window.location.href成功跳转:

<script type="text/javascript"> 
  function checkUser() 
{  
   if(2!=1){ 
    window.location.href="login.jsp" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ;  
   window.event.returnValue=false; 
   } 
} 
 </script>  
 
<div class="extra"> 
     <a class="ui blue right floated primary button" onclick="checkUser()" href="bookConfirm?userId=${account.id}&roomNum=${room.roomNum}&stime=${stime }&etime=${etime }" rel="external nofollow" rel="external nofollow" >确认预订</a> 
      </div> 

解决方法二

点击事件中  onclick="checkUser()"  变成 onclick="return checkUser();"

并且在 checkUser中 return  false;这样的话 a标签的href也不会执行。 这样就能window.location.href顺利跳转。

代码如下:

<script type="text/javascript"> 
  
  function checkUser() 
{  
   if(<%=flag%>!=1){ 
    window.location.href="login.jsp" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ; 
   return false; 
   } 
} 
 </script> 
 
 <div class="extra"> 
     <a class="ui blue right floated primary button" onclick="return checkUser();"  
 
href="bookConfirm?userId=${account.id}&roomNum=${room.roomNum}&stime=${stime }&etime=${etime  
 
}">确认预订</a> 
      </div> 

解决方法三

如果是form体提交的话还可以把summit改成button调用js提交,这样window.location.href也会在js提交summit之前执行成功跳转。

如下:

function checkUser() 
{  
   if(<%=flag%>!=1){ 
    window.location.href="login.jsp" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ; 
   return false; 
   } 
 document.getElementById("form").submit(); 
} 
 
 
  <form action="addRoom" method="post"  name="from" id="form"> 
      <table align="center" border="1" class="commTable"> 
        <tr> 
          <td class="right"><span 
            style="font-weight: blod;">房号:</span></td> 
          <td><input type="text" name="roomNum" size="25" 
            id="roomNum" /></td> 
        </tr> 
        <tr> 
          <td colspan="2" align="center"><button  value="添加" 
            onclick="checkUser()" /></td> 
        </tr> 
      </table> 
    </form> 

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# javascript  # window.location.href跳转无效  # JS  # 跳转无效  # JavaScript window.setTimeout() 的详细用法  # javascript window.confirm确认 取消对话框实现代码小结  # 解决javascript:window.close()在chrome  # Firefox下失效的问题  # javascript中的window.location.search方法简介  # js实现window.open不被拦截的解决方法汇总  # JavaScrip中window.dispatchEvent的原理和使用具体实例  # 跳转  # 表单  # 解决方法  # 超链接  # 还可以  # 就能  # 会在  # 希望能  # 事件中  # 谢谢大家  # 则在  # 在这次  # 解决办法  # 会先  # 这样的话  # div  # extra  # nofollow  # jsp  # rel 


相关文章: 网站制作外包价格怎么算,招聘网站上写的“外包”是什么意思?  如何登录建站主机?访问步骤全解析  如何在Windows服务器上快速搭建网站?  如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?  专业网站制作服务公司,有哪些网站可以免费发布招聘信息?  简单实现Android验证码  如何选择可靠的免备案建站服务器?  赚钱网站制作软件,建一个网站怎样才能赚钱?是如何盈利的?  盘锦网站制作公司,盘锦大洼有多少5G网站?  IOS倒计时设置UIButton标题title的抖动问题  如何处理“XML格式不正确”错误 常见XML well-formed问题解决方法  开封网站制作公司,网络用语开封是什么意思?  番禺网站制作公司哪家值得合作,番禺图书馆新馆开放了吗?  网站建设制作需要多少钱费用,自己做一个网站要多少钱,模板一般多少钱?  C++中引用和指针有什么区别?(代码说明)  已有域名能否直接搭建网站?  如何通过万网虚拟主机快速搭建网站?  外汇网站制作流程,如何在工商银行网站上做外汇买卖?  免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?  装修招标网站设计制作流程,装修招标流程?  实例解析Array和String方法  如何在西部数码注册域名并快速搭建网站?  深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?  如何用搬瓦工VPS快速搭建个人网站?  网站专业制作公司有哪些,做一个公司网站要多少钱?  手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?  清除minerd进程的简单方法  如何零基础开发自助建站系统?完整教程解析  宿州网站制作公司兴策,安徽省低保查询网站?  大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?  成都网站制作公司哪家好,四川省职工服务网是做什么用?  Android使用GridView实现日历的简单功能  合肥做个网站多少钱,合肥本地有没有比较靠谱的交友平台?  网站制作与设计教程,如何制作一个企业网站,建设网站的基本步骤有哪些?  微信小程序 五星评分(包括半颗星评分)实例代码  山东云建站价格为何差异显著?  安云自助建站系统如何快速提升SEO排名?  如何在阿里云高效完成企业建站全流程?  香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化  常州企业建站如何选择最佳模板?  定制建站流程步骤详解:一站式方案设计与开发指南  长春网站建设制作公司,长春的网络公司怎么样主要是能做网站的?  建站之星体验版:智能建站系统+响应式设计,多端适配快速建站  大型企业网站制作流程,做网站需要注册公司吗?  建站之星代理商如何保障技术支持与售后服务?  网站制作公司排行榜,四大门户网站排名?  深圳网站制作费用多少钱,读秀,深圳文献港这样的网站很多只提供网上试读,但有些人只要提供试读的文章就能全篇下载,这个是怎么弄的?  如何在Golang中引入测试模块_Golang测试包导入与使用实践  如何在IIS中新建站点并解决端口绑定冲突?  如何自定义建站之星模板颜色并下载新样式? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。