a4j命令按钮专注于按Enter键

时间:2011-05-23 11:59:19

标签: javascript html jsf ajax4jsf

我的jsf页面上有一个a4j命令按钮,当我在页面的任何位置按Enter键时,此命令按钮获得焦点并执行其操作

                                                                                           

我想在按Enter键时阻止按钮获得焦点 我试图使用onfocus =“this.blur()”,但它不起作用

提前致谢

1 个答案:

答案 0 :(得分:1)

<a4j:commandButton>充当提交按钮。因此,当按下回车键时执行操作。

当您看到生成的代码时,您会发现<input type="submit"/>

要忽略您应该使用命令链接并看起来像按钮给出样式button,如下所示:

.button {
    font: bold 11px Arial;
    text-decoration: none;
    background-color: #EEEEEE;
    color: #333333;
    padding: 2px 6px 2px 6px;
    border-top: 1px solid #CCCCCC;
    border-right: 1px solid #333333;
    border-bottom: 1px solid #333333;
    border-left: 1px solid #CCCCCC;
   }

如果您仍想使用<a4j:commandButton>,则可以使用

阻止输入
 onkeypress="var keycode;
 if (window.event) { keycode = window.event.keyCode;}else {return true;}
 if (keycode == 13) {return false;}else {return true;}"

但这会导致你按下Enter onfocus然后它就不会提交或调用动作,最好不要使用它