相关疑难解决方法(0)

填充p:selectOneMenu基于另一个p:selectOneMenu在ap:dataTable的每一行

我有一个<p:dataTable>懒惰的负载.在其中两列中,<p:selectOneMenu>每列都有一个.

第一列包含国家/地区列表,第二列包含数据库中的状态列表.

我想第二个菜单显示在只有那些状态(包含州列表的)每一行对应于该国在第一菜单中的数据表的每一行数据表.

在编辑模式下,当其菜单中的国家/地区更改时,应在其当前行的菜单中填充与该国家/地区对应的状态.

如何在数据表的每一行中加载与其国家/地区对应的状态列表?


数据表中的这两列是不完整的,因为我对如何实现这一点没有一个确切的想法.

<p:column>
    <p:cellEditor>
        <f:facet name="output">
            <h:outputText value="#{row.state.country.countryName}"/>
        </f:facet>

        <f:facet name="input">
            <p:selectOneMenu value="#{row.state.country}">
                <f:selectItems var="country"
                               value="#{cityBean.selectedCountries}"
                               itemLabel="#{country.countryName}"
                               itemValue="#{country}"/>

                <p:ajax update="states" listener="#{cityBean.getStates}"/>
            </p:selectOneMenu>
        </f:facet>
    </p:cellEditor>
</p:column>

<p:column>
    <p:cellEditor>
        <f:facet name="output">
            <h:outputText value="#{row.state.stateName}"/>
        </f:facet>

        <f:facet name="input">
            <p:selectOneMenu id="states">

                <f:selectItems var="state"
                               value="#{cityBean.selectedStates}"
                               itemLabel="#{state.stateName}"
                               itemValue="#{state}"/>
            </p:selectOneMenu>
        </f:facet>
    </p:cellEditor>
</p:column>
Run Code Online (Sandbox Code Playgroud)

cityBean.selectedCountries检索所有必需的国家,但cityBean.selectedStates也从数据库中检索所有不必要的状态,并且应该修改这些状态​​以仅检索与另一个菜单中的国家相对应的那些状态.

我怎么能从这里开始?

jsf selectonemenu primefaces jsf-2.2

12
推荐指数
1
解决办法
7974
查看次数

标签 统计

jsf ×1

jsf-2.2 ×1

primefaces ×1

selectonemenu ×1