我的表单上有一些<h:inputText>
和两个<h:commandButton>
,一个命令按钮以经典方式提交表单,另一个命令按下<f:ajax>
,如何阻止表单当用户在我的一个输入中按Enter键来触发第二个按钮时提交?
答案 0 :(得分:3)
如果表单中没有textareas,只需将以下内容添加到<h:form>
。
<h:form onkeypress="return event.keyCode != 13">
Enter键的键代码为13,因此无论何时按下,上面都会向表单返回false
,因此不再进行默认操作。
但是,如果您的表单(<h:inputTextArea>
和on)中有textareas,那么您希望让Enter键像往常一样运行,那么您需要将onkeypress
属性放入所有非textarea输入字段。您可以使用JS / jQuery来最小化代码重复。