[英]javascript enter key redirection in text box
我有一个简单的文本框,当我在其中输入内容时,希望将页面重定向。
<input type="text" onkeydown="window.open('http://www.example.com', '_self');" />
但是,当我在此文本框中按Enter
键时,它不会转到新页面。 但是当我按下A,B,1、2之类的键时会发生这种情况。这对我来说是发生在Chrome,Firefox和IE9中,而不是IE8中。
但是,当我在其中放置一个alert
功能Enter
按下Enter
键时,关闭警报框后,它会成功重定向。
<input type="text" onkeydown="alert();window.open('http://www.example.com', '_self');" />
它适用于所有浏览器。
谁能解释这个浏览器的行为?
我认为此行为是因为尚未设置return false
。 在您的代码中尝试这样:
function navigate()
{
window.location.href = 'http://www.google.com';
window.event.returnValue=false;
}
在HTML中的用法如下:
<input type="text" onkeydown="navigate();" />
希望这会有所帮助。
代替window.open
,如提到的,使用window.location.href
进行重定向。
尝试使用window.location.href,这在重定向中应该可以正常工作。
例:
<input type="text" onkeyup="window.location.href = 'http://www.example.com';" />
而且,在keyup上使用它是一个更好的选择。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.