求教!!想要实现输入内容或回车后,焦点自动跳到下一个输入框,但是在跳到第一个select标签时,就跳不到第二个select了,请问是什么原因????谢谢

BugMyGod 2017-04-17 03:40:09
想要实现输入内容或回车后,焦点自动跳到下一个输入框,但是在跳到第一个select标签时,就跳不到第二个select了,请问是什么原因????谢谢
另外,跳到select时 ,下拉选项自动弹出,应该怎样实现?求思路,谢谢


<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<link rel="stylesheet" href="css/demo.css"/>
<script src="js/jquery-3.1.1.min.js"></script>
<script src="js/demo.js"></script>
<title>demo</title>
</head>
<body>
<div class="wrapper">
<div class="container">
<form action="#" id="form" class="form">
<div class="form_inner">
<!--<label for="demo_1">用户名:</label>-->
<input type="text" class="demo_input" id="demo_1" name="demo_1" placeholder="请输入..."/>
<!--<label for="demo_2">1111:</label>-->
<input type="text" class="demo_input" id="demo_2" name="demo_2" placeholder="请输入..."/>
<input type="text" class="demo_input" name="demo_3" placeholder="请输入..."/>

<textarea class="demo_textarea" name="demo_6" placeholder="请输入..."></textarea>
<textarea class="demo_textarea" name="demo_7" placeholder="请输入..."></textarea>

<select class="demo_select" name="demo_4" >
<option>选项一</option>
<option>选项二</option>
<option>选项三</option>
</select>
<select class="demo_select" name="demo_5" >
<option>选项一</option>
<option>选项二</option>
<option>选项三</option>
</select>

</div>

</form>
</div>
</div>


</body>
</html>



$(document).ready(function(){
//keycode 37 = Left, keycode 38 = Up, keycode 39 = Right, keycode 40 = Down
//默认焦点在第一个;当input输入内容大于10或者回车,焦点跳到下一个;按左键返回上一个;
$('input').eq(0).focus();
$("[name^='demo_']").each(function(){
$(this).keyup(function(e){
//debugger;
e = window.event || e;
var k = e.keyCode || e.which;
if(k == 13 || $(this).val().length >= 10 ){ //回车 or >10
$(this).next().focus();
}else if(k == 37){ //left
$(this).prev().focus();
$(this).prev().focus(function(){
var obj = e.srcElement ? e.srcElement : e.target;
});
}
})
});
});
...全文
260 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
BugMyGod 2017-04-18
  • 打赏
  • 举报
回复
引用 1 楼 jslang 的回复:
select标签应该用change事件
<select class="demo_select" name="demo_4" onkeypress="return false;" >有网友提供,这样把下拉菜单拦截了,倒是能跳到第二个select了,在此基础上若想实现跳到每个select上它的option会自动弹出,该怎么设置呢
天际的海浪 2017-04-18
  • 打赏
  • 举报
回复
要select的下拉框自动弹出是不可能的。 你只能用div模拟select下拉框
天际的海浪 2017-04-17
  • 打赏
  • 举报
回复
select标签应该用change事件

87,994

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧