Я предполагаю, что вы хотите применить это ко второму полю ввода, в этом случае вам нужно захватить событие нажатия клавиши и вызвать кнопку с помощью JS, когда код клавиши 13
.
<form id="form">
...
<p:inputText value="#{bean.newChatMessageFromWeb}" onkeypress="if (event.keyCode == 13) { document.getElementById('form:submitChatMessage').click(); return false; }" />
<p:commandButton id="submitChatMessage" action="#{bean.submitChatMessage}" value="Send Message" />
(обратите внимание, что я добавил id
к <h:form>
, чтобы командная кнопка получила фиксированный идентификатор, который можно выбрать с помощью JS, также обратите внимание на return false
, это заблокирует кнопку по умолчанию от срабатывания)
Более понятным способом было бы поместить каждую форму в свою собственную <h:form>
.
<h:form>
<p:inputtext value="#{bean.mobileNumber}" />
<p:commandButton id="startNewChat" value="Chat" action="#{bean.startNewChat}" update=":chatWindow" />
</h:form>
<p:outputPanel id="chatWindow">
<h:form>
<p:inputTextarea readonly="true" value="#{bean.chatMessages}" />
<p:inputText value="#{bean.newChatMessageFromWeb}" />
<p:commandButton id="submitChatMessage" action="#{bean.submitChatMessage}" value="Send Message" />
</h:form>
</p:outputPanel>