您的位置:首页 > 其它

输入表单输入完一个后按住enter光标自动跳到下一个表单

2017-04-25 11:29 211 查看
   $.enterfocus = function (selector, callback) { //按住enter键可以自动换到下一行的input

        var boxArray = [].slice.call(document.querySelectorAll(selector));

        for (var index in boxArray) {

            var box = boxArray[index];

            box.addEventListener('keyup', function (event) {

                if (event.keyCode == 13) {       // 点击了enter键

                    var boxIndex = boxArray.indexOf(this);

                    if (boxIndex == boxArray.length - 1) {

                        if (callback) callback();

                    } else {

                        var nextBox = boxArray[++boxIndex];

                        $.focus(nextBox);

                    }

                }

            }, false);

        }

    };

使用:

 $.enterfocus('#form1 input', function () {

                $.trigger(document.getElementById("btn_ok"), 'tap');      
//trigger激发一个事件,tap,focus,select,

            });

总结:

trigger用法:

当相应的事件发生时,任何通过
.on()
或一个快捷方法绑定的事件处理程序将被触发。但是,它们可以用
.trigger()
方法手动触发。调用
.trigger()
执行处理程序和用户自然的触发该事件,他们的执行顺序时相同的

$('#foo').on('click', function() {
alert($(this).text());
});
$('#foo').trigger('click');激发上面的click事件


若要提交第一个表单但又不想使用 submit() 函数,请尝试如下方法:

$("form:first-child").trigger("submit")

点击回车提交

$("#div").keyup(function(event){

        if(event.keyCode==13) {  $(".button").submit();}

})
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐