Javascript-输入Enter键,而不在内部输入时提交

我有一个带有多个输入框的表单,无论我当前是否突出显示其中一个输入,我都想在按下Enter键时提交这些表单.也就是说,我希望能够输入文本,单击页面背景,然后按Enter,然后提交表单.我曾尝试制作一个隐藏按钮,但是此解决方案仅在光标位于输入之一内部时才提交.

解决方法:

使用纯JavaScript在文档上使用onkeypress:

Fiddle.(demo)

JS:

var form = document.getElementById('form');
document.onkeypress = function(e) {
    if(e.keyCode === 13) //if enter pressed
    {
        form.submit();
    }

}

这是Matt建议的使用addEventListener的另一种解决方案:

var form = document.getElementById('form');
function submitForm(e) {
    if(e.keyCode === 13) //if enter pressed
    {
        form.submit();
    }

}

document.addEventListener('keypress', function() {submitForm(event)}, false);

附带说明:
我不鼓励您在纯JS可以轻松帮助您的地方使用jQuery,这就是为什么为您提供了JavaScript解决方案的原因.我不鼓励这样做,因为jQuery大大增加了服务器的负载!

如您所说,您是Java的新手,请执行以下步骤以使脚本每次都运行:

>将我的代码添加到扩展名为.js的文件中
>添加< script src =“ your_filename.js” type =“ text / javascript”>< / script>在您关闭< / body>之前标签.
>刷新页面,瞧.

上一篇:代码表示学习:token级别代码图表示


下一篇:的php-jQuery .html使提交按钮不起作用