Командная кнопка a4j фокусируется на нажатии клавиши Enter - PullRequest
0 голосов
/ 23 мая 2011

У меня есть кнопка a4j на моей странице jsf, когда я нажимаю клавишу Enter в любом месте страницы, эта командная кнопка получает фокус и выполняет свое действие

Я хочу, чтобы кнопка не фокусировалась при нажатии клавиши Enter. Я пытался использовать onfocus = "this.blur ()", но она не работала

Заранее спасибо

1 Ответ

1 голос
/ 23 мая 2011

<a4j:commandButton> действует как кнопка отправки.Следовательно, выполняет действие при нажатии enter.

Когда вы видите сгенерированный код, вы найдете что-то вроде <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, тогда он не будет отправлять или вызывать действие, лучше его не использовать

...