在我的工作中,我尝试通过按Enter键将移动焦点从一个文本字段移动到另一个文本字段。我在以下链接中找到了可能的答案:
How to go to next textbox when enter is pressed?
Move Cursor to next text Field pressing Enter
但这些都不适合我。我的代码:
<script>
$('input[type='text']').keyup(function(e) {
if(e.keyCode == 13) {
$(this).next().focus();
}
});
</script>
<input type='text' />
<input type='text' />
<input type='text' />
<input type='text' />
<input type='text' />
<input type='text' />
答案 0 :(得分:1)
只需将$('input[type='text']')
更新为$('input[type="text"]')
即可。你有未闭合的字符串。
工作码本here。
答案 1 :(得分:1)
$(document).ready(function () {
$('form').on('submit', function (event) {
event.preventDefault();
})
$('input[type="text"]').keyup(function(event) {
if(event.keyCode === 13) {
$(this).next().focus();
}
});
})
&#13;
<script src="https://code.jquery.com/jquery-3.2.1.slim.js"></script>
<form>
<input type="text"/>
<input type="text"/>
<input type="text"/>
<input type="text"/>
<input type="text"/>
</form>
&#13;
答案 2 :(得分:0)
这里发生了什么:
<!-- Start loading the page -->
<script>
// execute javascript. Note that there
// are no inputs on the page currently - they will be loaded later
// This selector matches nothing:
$("input[type='text']").keyup(function(e) {
if(e.keyCode == 13) {
$(this).next().focus();
}
});
</script>
<!-- JavaScript executed. Now add inputs to the page -->
<input type='text' />
<input type='text' />
您可以做的是将<script>
移到输入下方(最简单)或将keyup
侦听器移动到onload函数:
$(function(){
// i.e. wrap your js here
// the js here will be executed only after page has loaded
});