HTML 文本输入:避免在按下 Enter 时提交
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/12278571/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
HTML Text Input: Avoid submit when enter is pressed
提问by Milo?
I have an HTML input which is a textfield. When I am pressing the enter, this will call the submit, which is normal.
我有一个 HTML 输入,它是一个文本字段。当我按下回车时,这将调用提交,这是正常的。
Now, I would like to do something else when Enter is clicked on that textBox.
现在,当在该文本框上单击 Enter 时,我想做其他事情。
I am trying something like that:
我正在尝试这样的事情:
<input type="text"
id="first_page"
onPaste=""
onkeydown="if (event.keyCode == 13) alert('enter')" />
The alert works well but the submit is still done. My page is reloading after that.
警报运行良好,但提交仍然完成。之后我的页面正在重新加载。
Could you help me please.
请问你能帮帮我吗。
采纳答案by Hkachhia
write return false;and check it
编写return false;并检查它
回答by Sibu
Using jquery
使用jQuery
<script>
$('#first_page').keypress(function(e) {
if (e.keyCode == '13') {
e.preventDefault();
//your code here
}
});?
</script>
using javascript
使用 JavaScript
<input type="text" id="first_page" onPaste="" onkeydown="if (event.keyCode == 13) { alert('enter');return false;}" />
回答by s_a
Other option would be using onkeypress
其他选项是使用 onkeypress
<input type="text" id="first_page" onPaste="" onkeypress="if (event.keyCode == 13) {alert('enter'); return false;}" />
回答by Sandeep Pathak
You could try the below script :
你可以试试下面的脚本:
<script>
function checkEnter(event)
{
if (event.keyCode == 13)
{
alert('enter')
return false;
}
}
And the Html:
和 Html:
<input type="text" id="first_page" onPaste="" onkeydown="return checkEnter(event);" />
回答by Tarun Tak
write the following code after alert('enter')
写在下面的代码之后 alert('enter')
return false;
回答by Xavi López
You should be returning falsein the keydownevent handler function in order to prevent further processing of the event.
您应该false在keydown事件处理函数中返回,以防止进一步处理事件。
Also, you might find the following question useful: Prevent Users from submitting form by hitting enter.
此外,您可能会发现以下问题很有用:通过按 Enter 防止用户提交表单。
回答by Abdul Afiq
Use this, it worked in mine.
使用这个,它在我的工作中。
Replace on the keydown:
在键盘上替换:
onkeydown="if (event.keyCode == 13 || event.which == 13) event.preventDefault();"
回答by laki laki
$(function () {$('#form').validationEngine(); });
It will work in my mvc problem
它可以解决我的 mvc 问题
回答by Vladimir
using jquery you can avoid all submiting or some element
使用 jquery 可以避免所有提交或某些元素
$("#form").submit(function(e) {
e.preventDefault();
});

