ajax – primefaces p:selectBooleanButton监听器未在嵌套的ui
发布时间:2020-12-16 02:56:40 所属栏目:百科 来源:网络整理
导读:在父ui:repeat中为p:selectBooleanButton触发侦听器,但不为内部/子ui:repeat触发p:selectBooleanButton的侦听器. 我们不能使用嵌套表单.有什么建议. h:form prependId="false" ui:repeat value="#{xBean.sectionsList}" var="sectionItem" p:fieldset p:
在父ui:repeat中为p:selectBooleanButton触发侦听器,但不为内部/子ui:repeat触发p:selectBooleanButton的侦听器.
我们不能使用嵌套表单.有什么建议. <h:form prependId="false"> <ui:repeat value="#{xBean.sectionsList}" var="sectionItem"> <p:fieldset> <p:selectBooleanButton onLabel="ON" offLabel="OFF" value="#{sectionItem.checked}"> <p:ajax listener="#{xBean.selectSection}"/> </p:selectBooleanButton> : <ui:repeat value="#{sectionItem.sectionOptionsList}" var="sectionOptionItem"> <p:selectBooleanButton onLabel="ON" offLabel="OFF" value="#{sectionOptionItem.checked}"> <p:ajax listener="#{xBean.selectSectionOption}"/> </p:selectBooleanButton> </ui:repeat> </p:fieldset> </ui:repeat> </h:form> 解决方法
< ui:重复>是一个视图渲染时间标记.因此,它实际存在于JSF组件树中,并且需要多次迭代该值来生成其HTML输出.
换句话说,它们(p:selectBooleanButton)需要在视图构建时而不是视图渲染时准备. JSTL< c:forEach>是一个视图构建时间标记.它将在JSF组件树中生成物理上的多个组件. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |