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 false
in the keydown
event 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();
});