javascript - 捕获表单 onSubmit 与捕获 Enter 键?

标签 javascript html forms

我有一个包含一个文本框和一个按钮的页面,其中包含当用户单击按钮时触发的 JavaScript 功能。我希望当用户按下 Enter 键时也能触发该功能。

我不确定是将这两个输入输入到一个表单中并在 onSubmit 属性中使用“return functionname()”,还是捕获在文本框中按下 Enter 键。我的直觉是使用表单和 onSubmit,它具有在浏览器级别处理独特提交方法的优势,但我不确定是否有任何标准/最佳实践不鼓励这样做。

即:

<form id="myform" onsubmit="return myFunction()">
<input type="text" id="mytextbox">
<input type="submit" id="mysubmit" value="Go">
</form>

对比

<input type="text" id="mytextbox" onkeypress="myFunction()">
<input type="button" id="mysubmit" value="Go" onclick="myFunction()">

最佳答案

My gut instinct is to use a form and onSubmit

听起来您的直觉与常规做法一致。 ;-)

which has the advantage of handling unique submission methods on the browser level

这使得它健壮可靠,也许可以解释为什么它是常见的做法。

but I'm not sure if there are any standards/best practices that discourage that.

当然没有任何官方标准(但这也不是他们的工作)。 “最佳”是一个基于比较标准的相对术语。如果您的标准包括以下内容:健壮性、无处不在的支持、易于维护和简单性,那么在表单上放置一个提交监听器可能会获得非常高的排名。

PS:要使表单控件成功(即要将其值与表单一起提交),它必须有一个名称。 ID 是可选的(通常不是必需的)。

关于javascript - 捕获表单 onSubmit 与捕获 Enter 键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21719254/

相关文章:

javascript - 检查 jquery 中的 if else 条件

javascript - 更改滚动长度

javascript - 有条件的简单下拉列表?

php - 表单向数据表中插入空白行

html - IE8 表单未提交(间歇性)

javascript - 根据表单选择下拉选项重定向到 URL

javascript - 有什么方法可以在大文件上加速 d3.csv 吗?

javascript - 包含图像和 youtube 视频的 Blueimp 画廊

html - 我的主 div 有边距但没有设置它有一个

css - Bootstrap 表单输入不允许在单击时进行编辑