我有一个带有两个按钮和几个输入字段的jsf 1.2表单.第一个按钮放弃输入的值,并使用db中的值重新填充页面,第二个按钮保存输入的值.当用户在光标位于其中一个输入字段中时按下enter键,表单被提交并且与第一个按钮相关联的操作被执行时,会出现问题.
代码如下所示:
<h:commandButton action="#{bean.reset}" value="Reset" />
<h:commandButton action="#{bean.save}" value="Save" />
<!-- h:datatable with several h:inputText elements -->
Run Code Online (Sandbox Code Playgroud)
按Enter键是否可以将特定按钮声明为默认操作?这种行为实际上是在某处指定的吗?
我有一个按钮和以下的javascript例程.
$("button").keydown( function(key) {
switch(key.keyCode) {
case 32: //space
return false;
}
} );
Run Code Online (Sandbox Code Playgroud)
据我所知,它return false;会阻止按键被处理.所以$("button").click();不会被召唤.对于其他keyCodes,这可以按预期工作.例如,如果我拦截40,这是向下按钮,页面不滚动.
我在Firefox中注意到了这种行为.
为什么不return false;停止空格上的按钮点击事件?javascript规范对此有何评价?
我有一个JSF ajax keydown事件链接到备用bean中的事件侦听器。
JSF文件中的代码如下。
<p:inputText value="#{someBean.value}>
<p:ajax event="keydown" listener="#{someBean.keyDownEvent}" />
</p:inputText>
Run Code Online (Sandbox Code Playgroud)
我想获取“输入”按钮事件代码。当我单击Enter时,我需要在服务器端执行一些特定的事件。如何使用ajax调用获取事件代码?
jsf ×2
action ×1
button ×1
default ×1
enter ×1
form-submit ×1
javascript ×1
jquery ×1
keyboard ×1
primefaces ×1