Jsf 侦听器,用于<;p:自动完成>;当用户单击某个选项时

Jsf 侦听器,用于<;p:自动完成>;当用户单击某个选项时,jsf,jsf-2,primefaces,Jsf,Jsf 2,Primefaces,当用户从的下拉菜单中单击一个选项时,我想导航到另一个页面,尝试使用的onclick侦听器,但每当我单击文本框时,它就会触发。有没有办法通过使用javascript或支持bean来实现这一点,我应该使用什么侦听器来获得所需的结果?您可以使用ajax itemSelect事件 <p:autoComplete ...> <p:ajax event="itemSelect" listener="#{bean.handleSelect}" /> </p:

当用户从
的下拉菜单中单击一个选项时,我想导航到另一个页面,尝试使用
onclick
侦听器,但每当我单击
文本框时,它就会触发。有没有办法通过使用javascript或支持bean来实现这一点,我应该使用什么侦听器来获得所需的结果?

您可以使用ajax itemSelect事件

 <p:autoComplete ...>  
     <p:ajax event="itemSelect" listener="#{bean.handleSelect}" />  
 </p:autoComplete>

每当选择一个项目时,这将在bean中调用handleSelect方法


您还可以看到

handleSelect
是void类型,因此我不能返回任何用于导航的字符串,就像我为其他JSF组件的
action
属性所做的那样。有其他选择吗?您可以从ajax请求重定向,请参见