我正在使用丰富的面孔选择组件。当用户在选择组件中手动键入某些内容时,我想要动态值。
<rich:select enableManualInput="true" defaultLabel="start typing for select" value="#{supplierSearchBean.userInput}">
<a4j:ajax event="keyup" execute="@this" listener="#{supplierSearchBean.userInputChange}"/>
<f:selectItems value="#{supplierSearchBean.selectOptions}" />
</rich:select>
Java代码如下
public void userInputChange(ActionEvent ae){
Map map = ae.getComponent().getAttributes();
System.out.println(map.toString());
}
public void setUserInput(String userInput) {
System.out.println("userINput = " + userInput);
this.userInput = userInput;
}
在这里我发现了 2 个问题 第一个:setUserINput 总是在用户类型值时打印空字符串 第二个:监听器方法永远不会被调用。
有什么帮助吗?