Командная кнопка не отправляется при вводе, нажмите только в IE <9

У меня есть 2 элементы, следующие друг за другом (а не один внутри другого), например:

<h:form id="innerHeaderForm1">
    <h:inputText value="#{searchBar.eventname}" />
    <h:commandButton action="#{searchBar.search1}" value="click1"/>
</h:form>
<h:form id="innerHeaderForm2">
    <h:inputText id="last" value="#{searchBar.personname}"/>
    <h:commandButton action="#{searchBar.search2}" value="click2"/> 
</h:form>

Это отлично работает. У меня проблема в том, что в IE 8 (и я предполагаю, что другие более старые версии), когда я в первой форме нажимаю клавишу «Enter» на клавиатуре, форма не отправляется. Страница перезагружается, но даже не вызывает # {searchBar.search1} .

Самое странное во всем этом то, что это прекрасно работает во второй форме. Я не получаю сообщения об ошибке и не получаю обратной связи от браузера.

В моем компоненте поддержки у меня есть что-то вроде:

public String search1() {
    System.out.println("submitting form1");
    return "success";
}

public String search2() {
    System.out.println("submitting form2");
    return "success";
}

Когда я нажимаю клавишу «Enter», я даже не попадаю в компонент поддержки.

Но: когда я "нажимаю" кнопку отправки (с помощью мыши), все работает.

Мы будем благодарны за любое понимание этого!

5
задан BalusC 11 February 2012 в 14:20
поделиться