JSF 2.0, Mojarra 2.0.1, PrimeFaces 3.4.1
Вот компонент p:inputText
, который, как ожидается, вызовет метод поддержки bean при нажатии клавиши ввода.
<p:inputText id="commentInput" rendered="#{status.haveComment}"
value="#{statusBean.newComment}"
onkeypress="if (event.keyCode == 13) { onchange(); return false; }">
<f:ajax event="change" listener="#{statusBean.test}" />
</p:inputText>
В то время как поддержка bean имеет метод:
public void test(AjaxBehaviorEvent event) {
System.out.println("Pressed enter!");
}
Используется метод вызова при нажатии клавиши ввода, но он имеет больше, чем это; случай непредвиденного поведения:
--Click input text
----Type some letters
------Click somewhere else in the page
--------CONSOLE: Pressed enter!
Я думаю, что ajax event=change
каким-то образом обнаруживает изменение и вызывает метод. Как преобразовать этот компонент p:inputText
в соответствующий компонент комментатора, такой как Facebook или другие, есть?