在JSF iceface的值更改侦听器处获取键代码
我有一个自动完成的输入文本,我想要valueChangeListener上的关键代码,因为我们可以在javascript中通过使用event.getKeyCode获得它。我使用jsf 1.2和icefaces 1.7.2 我想在valuechangelistener上输入键代码在JSF iceface的值更改侦听器处获取键代码,jsf,icefaces,Jsf,Icefaces,我有一个自动完成的输入文本,我想要valueChangeListener上的关键代码,因为我们可以在javascript中通过使用event.getKeyCode获得它。我使用jsf 1.2和icefaces 1.7.2 我想在valuechangelistener上输入键代码 <ice:selectInputText id="AutoCmpTxt11" rows="10" width="300" valueChangeListener="#createJournalVoucherBea
<ice:selectInputText id="AutoCmpTxt11" rows="10" width="300"
valueChangeListener="#createJournalVoucherBean.changeDebitAccNameValueChangedListener}"
value="#{createJournalVoucherBean.debitAccount.name}" partialSubmit="true"
autocomplete="true">
你需要它做什么?您已经有了
searchWord
。如果出于某种原因,您只想获得最后一个字符,那么只需使用
下面是enter键检测的示例代码 您可以根据需要为其他按键事件执行此操作
public void changeDebitAccNameValueChangedListener (ValueChangeEvent event) throws InterruptedException {
String searchWord = ((String) event.getNewValue()).trim().toUpperCase();
//-- Code for key detection
keyPressedEvent(FacesContext.getCurrentInstance());
//--
}
private void keyPressedEvent(FacesContext facesContext) {
try {
Map requestParemeterMap = facesContext.getExternalContext()
.getRequestParameterMap();
KeyEvent keyEvent = new KeyEvent(this , requestParemeterMap);
if (keyEvent.getKeyCode() == KeyEvent.CARRIAGE_RETURN) {
// do your custom processing
}
} catch (Exception e) {
e.printStackTrace();
}
}
char lastChar = searchWord.charAt(searchWord.length() - 1);
public void changeDebitAccNameValueChangedListener (ValueChangeEvent event) throws InterruptedException {
String searchWord = ((String) event.getNewValue()).trim().toUpperCase();
//-- Code for key detection
keyPressedEvent(FacesContext.getCurrentInstance());
//--
}
private void keyPressedEvent(FacesContext facesContext) {
try {
Map requestParemeterMap = facesContext.getExternalContext()
.getRequestParameterMap();
KeyEvent keyEvent = new KeyEvent(this , requestParemeterMap);
if (keyEvent.getKeyCode() == KeyEvent.CARRIAGE_RETURN) {
// do your custom processing
}
} catch (Exception e) {
e.printStackTrace();
}
}