如何使表单元素在回车键下依次获得焦点,求大神指条明路

<body>

<input id="mobile"><br/><input><br/><input><br/><input><br/><input><br/><input><br/><input><br/>

</body>

//设置键盘按键表单字段获得焦点
    $("#mobile").focus();//文档加载后第一个字段自动获得焦点
    $(window).keydown(function(e){        var cur_focus=$(":focus");//获取当前获得焦点的表单元素
        
        if(e.keyCode==13){//当点击回车键
        
            if(cur_focus.length==0){//如果没有表单元素获得焦点
            
                $("#mobile").focus();//使第一个表单元素获得焦点
                
            }else{//如果有表单元素获得焦点
            
        var cur_focus_index=$(":text").filter(":focus").index();//找到当前获得焦点的表单元素在所有text表单元素的index
            
        $(":text").eq(++cur_focus_index).focus();//使下一个表单元素获得焦点
            }
        }
        
    })

问题是希望按下回车键表单text会依次获得焦点,但情况并没有想象的那样区实现,求大神指点

在线调试:http://runjs.cn/code/bb0ekcc9


猛跑小猪
浏览 565回答 1
1回答

元芳怎么了

$(function(){&nbsp; &nbsp; var $all= $('input[type="text"]');&nbsp; &nbsp; var $curr = $all.first().focus();&nbsp; &nbsp; var i = 0;&nbsp; &nbsp; $(window).on('keyup',function(e){&nbsp; &nbsp; &nbsp; &nbsp; if(e.keyCode === 13){&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $all.eq(++i).focus();&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if(i>=$all.length)i=0;&nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; });});
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript