js实现动态绑定回车键焦点触发提交按钮

有时候以一个网页上有多个文本框,后面跟一个按钮实现一些诸如搜索,添加的功能,有时候希望输入完以后点击回车键直接提交而不是鼠标点击,很多人有这个习惯,但是如果用设置defaultbutton的话只能指定一个默认的,且无法改变,很不舒服,不符合现在的需求。今天看到一个利用js实现文本框焦点切换,自己修改一下发现可以实现上述的功能。

<script type="text/javascript">
        $(function() {
            //$('input:text:first').focus();
            var $inp = $('input:text');
            $inp.bind('keydown', function(e) {
                var key = e.which;
                if (key == 13) {
                    e.preventDefault();
                    var nxtIdx = $inp.index(this);
                    $(":input:submit:eq(" + nxtIdx + ")").click();
                }
            });
        });
</script>

原理:先获取现在正在输入文本的文本框,然后获取到它后面的submit类型的input标签,就是button按钮,浏览器解析后即为submit,click实现提交功能。测试能做到。

你可能感兴趣的:(动态绑定)