JSF 2.0:按ENTER时的ajax请求

enf*_*fix 10 ajax jsf

当我在inputText字段中点击"enter"而没有刷新页面时,我需要做一个ajax请求.那是我的代码:

<h:form id="form-test">
   <p:growl id="messages" showDetail="true"/>
   <p:inputText id="inputEnter" 
             onkeypress="if (event.keyCode == 13) {onchange(); return false; }" 
             value="#{bean.content}">
       <f:ajax event="change" listener="#{bean.save}" update="messages"/>
   </p:inputText>
</h:form>
Run Code Online (Sandbox Code Playgroud)

在bean中我有一个简单的方法:

public void save(AjaxBehaviorEvent event){
  ...
}
Run Code Online (Sandbox Code Playgroud)

一切正常,但刷新页面!!! 为什么?我该如何解决?

Osc*_*nco 4

已经有一个线程有类似您的问题如何处理按下 ENTER 按键以触发 onBlur() 事件?

我只想改变

onkeypress="if (event.keyCode == 13) {e.preventDefault();
inputEnter.onchange(); return false; }" 
Run Code Online (Sandbox Code Playgroud)

如果你使用 JQuery

$('#form-test\\:inputEnter').onchange();
Run Code Online (Sandbox Code Playgroud)