Javascript JQuery上的keydown事件焦点到一个按钮似乎自动按下了按钮?
我有两个文本输入和一个按钮 对于这两种文本输入,我使用JQuery设置了一个keydown事件,以便在按Enter键时将焦点切换到下一个元素 因此: 在第一个输入中按Enter键应聚焦到第二个输入。 在第二次输入时按Enter键应将焦点对准按钮。 var计数器=0; 函数Foo { $'output'.html++计数器; } 函数FocusToLastNameevt { var keyCode=evt.keyCode | | evt.which; 如果keyCode==13$'lastname'。焦点; } 功能焦点按钮vt { var keyCode=evt.keyCode | | evt.which; 如果keyCode==13$'btn'。焦点; } $'firstname'。在'keydown'上,FocusToLastName; $'lastname'。在'keydown'上,按FocusToButton; $'firstname'。焦点; 输出{颜色:0f0;背景:80f;} 好啊Javascript JQuery上的keydown事件焦点到一个按钮似乎自动按下了按钮?,javascript,jquery,events,focus,onkeydown,Javascript,Jquery,Events,Focus,Onkeydown,我有两个文本输入和一个按钮 对于这两种文本输入,我使用JQuery设置了一个keydown事件,以便在按Enter键时将焦点切换到下一个元素 因此: 在第一个输入中按Enter键应聚焦到第二个输入。 在第二次输入时按Enter键应将焦点对准按钮。 var计数器=0; 函数Foo { $'output'.html++计数器; } 函数FocusToLastNameevt { var keyCode=evt.keyCode | | evt.which; 如果keyCode==13$'lastnam
您需要停止默认事件。使用event.preventDefault方法在焦点到按钮功能中执行此操作,如下所示:
function FocusToButton(evt)
{
evt.preventDefault();
var keyCode = evt.keyCode || evt.which;
if (keyCode==13) $('#btn').focus();
}
将其添加到其他函数中也是一个好主意。阅读更多关于默认设置的信息