我有一个包含一个文本框和一个按钮的页面,其中包含当用户单击按钮时触发的 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/