从ajax请求的h:input获取当前值

时间:2014-01-24 18:07:03

标签: ajax jsf-2

我有这个简单的xhtml:

<h:inputText id="input-nome" value="#{bean.value}"  >
   <f:ajax listener="#{bean.myListener}"  event="keypress"  >
   </f:ajax>
</h:inputText>

和我的听众:

public void myListener(AjaxBehaviorEvent event){
    UIInput input =  (UIInput) event.getSource();
    System.out.println(input.getValue());
System.out.println(getBean().getName());
}

我想获取当前输入的值,但是在监听器中我总是得到前一个值,例如,如果我键入&#39; a&#39;并且&#39; b&#39;,听众只得到&#39; a&#39;我键入&#39; ab&#39;时的上一个值。如果我输入&#39; abc&#39;,我会得到&#39; ab&#39;。如何获取当前输入文本值?

1 个答案:

答案 0 :(得分:0)

将活动从keypress更改为keyup。您可以添加execute="@this"execute="input-nome"

  

onkeyup:释放密钥时执行的客户端回调   输入元素。