OnKeyPress ENTER重新加载页面

时间:2012-10-08 12:00:11

标签: javascript onkeypress

<input type="text" onkeypress="if (event.keyCode==13){ func_name(this.value);}"    id="userinput"/>

我有一个文本字段,我在按下ENTER键时调用了一个函数。问题是页面被重新加载而它不应该这样,因为我只调用一个js函数。请告诉我我在做什么错。

2 个答案:

答案 0 :(得分:5)

通过按Enter键提交表单。您可以将onsubmit事件附加到表单,并返回false以阻止提交(并且提交为true)。您可以在提交之前使用此功能验证数据,或截取您的keypress事件。

或者,如下面所述,您可以使用event.preventDefault()来阻止按Enter键触发提交。

像这样......

<form action=".">
    <input type="text" onkeypress="console.log('happy days'); event.preventDefault()">
</form>

答案 1 :(得分:4)

我知道这是一条旧信息,但我解决了它添加&#34;返回false&#34;:

<input type="text" onkeypress="if (event.keyCode==13){ func_name(this.value);return false;}" id="userinput"/>

对于遇到类似问题的其他人来说,这可能是有用的。