我在我的表单中有多个文本字段,我希望当用户在一个文本字段中输入数据并按回车键时,光标移动到当前文本字段旁边的另一个文本字段。我访问了一些问题,但没有发现它们有用。
$("#username").keypress(function (event) {
alert("inside function");
if(event.keyCode == 13) {
textboxes = $("input.username");
debugger;
currentBoxNumber = textboxes.index(this);
if (textboxes[currentBoxNumber + 1] != null) {
nextBox = textboxes[currentBoxNumber + 1];
nextBox.focus();
nextBox.select();
event.preventDefault();
return false;
}
}
});
这是我的代码,我已经尝试了另一件事,当数据输入在最后一个文本字段,然后表格将提交鼠标点击按钮,而不是按回车键。
6条答案
按热度按时间af7jpaap1#
这应该行得通:
回车不会在所有浏览器中触发
keypress
,而是使用了keyup
。还将eventlistener附加到每个input
,而不是 Package 器。A live demo at jsFiddle.
您的事件委托代码也将在稍有更改的情况下工作:
上面句子中的
this
将指 Package 器而不是input
,event.target
指激发事件的实际元素。A live demo at jsFiddle.
gmxoilav2#
试试这个,只要你按下它将移动到下一个输入字段的形式,当它到达提交按钮,它将提交的形式
cfh9epnr3#
它非常适合我,支持几乎所有的jquery版本!
arknldoa4#
icnyk63a5#
7gs2gvoe6#