不适用于PrimeFaces组件
发布时间:2020-12-16 03:07:13 所属栏目:百科 来源:网络整理
导读:我尝试使用selectOneMenu的onChange事件,但它不起作用,当我添加onChange属性时,组件不会显示. 有人能告诉我如何处理 p:selectOneMenu的onChange事件? 这是我的观点: p:selectOneMenu id="service" filterMatchMode="startsWith" f:selectItem itemLabel="
我尝试使用selectOneMenu的onChange事件,但它不起作用,当我添加onChange属性时,组件不会显示.
有人能告诉我如何处理< p:selectOneMenu>的onChange事件? 这是我的观点: <p:selectOneMenu id="service" filterMatchMode="startsWith"> <f:selectItem itemLabel="Selectionner un Service : " /> <f:selectItems value="#{newOpProgramme.listeSevice}" var="service" itemValue="#{service.serviceId}" itemLabel="#{service.serviceNom}"/> <f:ajax event="change" execute="@this" listener="#{newOpProgramme.serviceChange()}" render="nomCdp"/> </p:selectOneMenu> 这是< f:ajax监听器>请求范围bean中的方法: public void serviceChange() { System.out.println("change"); } 但是,当我更改菜单时,没有打印任何内容. 这是怎么造成的,如何解决?
首先,onChange是错误的事件名称.这是改变.其次,如果您打算调用HTML属性名称,onChange也是错误的属性名称.它正在改变.
回到你的具体问题;标准的JSF< f:ajax>与PrimeFaces组件不兼容.您应该使用PrimeFaces自己的 <p:selectOneMenu ...> ... <p:ajax listener="#{newOpProgramme.serviceChange()}" update="nomCdp" /> </p:selectOneMenu> 请注意,我省略了事件和流程属性.它们都分别具有valueChange和@this的正确默认值. 也可以看看: > What values can I pass to the event attribute of the f:ajax tag? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |