我有一个带有多个输入框的表单,当我按下回车键时,我试图提交该表单,无论其中一个输入当前是否突出显示。也就是说,我希望能够输入文本,单击页面背景,按回车键,然后提交表单。我尝试制作一个隐藏按钮,但只有当光标位于其中一个输入内时,此解决方案才会显示。
答案 0 :(得分:3)
使用纯javascript:{/ 1>在onkeypress
上使用document
<强> 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 会增加服务器上的负担!
正如您所说,您是javascript的新手,请执行以下步骤以使您的脚本每次都运行:
.js
扩展名<script src="your_filename.js" type="text/javascript"></script>
代码前添加</body>
。答案 1 :(得分:1)
在jQuery的帮助下:
$(document).keydown(function(e) {
if (e.keyCode == 13) {
$('#your-form').submit();
return false;
}
});