繁体   English   中英

页面正在刷新,而不是加载分配的URL

[英]page is being refreshed instead of loading the assigned url

我试图在输入文本框中捕获“ enter”键,然后根据输入将新的URL分配给我的页面。 问题是,分配给链接windoe.location.href以某种方式被用于当前值覆盖windoe.location.href和页面被刷新,而不是分配加载新的URL。

这是代码:

  $(this).on('keydown', function(event) {
       myKeyCode=event.which
       if(myKeyCode==13) //'enter' key pressed
       {
          link=window.location.origin + '/search?search=' + $(this).val();
          window.location.href=link;
       }
  });

我猜想keypress事件的一些默认行为正在干扰。 我尝试使用event.preventDefault();防止默认行为event.preventDefault(); 但这会阻止输入文本框进行任何输入。

另一个奇怪的发现:当我发出alert('something');时,代码的行为就很好alert('something'); 我的if语句中的两行之间。 好像

window.location.origin + '/search?search=' + $(this).val();

需要花一些时间进行评估,而使用警报会给它足够的时间进行评估。

if (myKeyCode==13) {
  event.preventDefault();
  link=window.location.origin + '/search?search=' + $(this).val();
  window.location.href=link;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM