小编gus*_*max的帖子

如何使用p:ajax按顺序更新多个组件

我正在尝试呈现以下JSF页面:

<h:form id="form" prependId="false">
    <h:panelGrid width="100%">
        <h:panelGroup id="tableDiv" layout="block">
            <h:panelGroup layout="block" style="text-align: center;">
                <p:dataTable id="table" var="_item" 
                        value="#{primeBean.findTableModel()}">
                        ...
                </p:dataTable>
            </h:panelGroup>
        </h:panelGroup>
        <h:panelGrid columns="2" width="100%">
            <h:panelGroup id="barChartDiv" layout="block">
                <p:barChart id="barChart"
                    value="#{primeBean.findCartesianModel()}">
                    <p:ajax event="itemSelect" listener="#{primeBean.handleItemSelect}"
                            update="pieChartDiv,tableDiv" />
                </p:barChart>
            </h:panelGroup>
            <h:panelGroup id="pieChartDiv" layout="block">
                <h:panelGroup layout="block">
                    <p:pieChart id="pieChart">
                        <p:ajax event="itemSelect" listener="#{primeBean.handleItemSelect}" 
                                update="tableDiv" />
                    </p:pieChart>
                </h:panelGroup>
            </h:panelGroup>
        </h:panelGrid>
    </h:panelGrid>
</h:form>
Run Code Online (Sandbox Code Playgroud)

当我单击任何一个栏时p:barChart,我希望update属性中的组件将按照我声明的顺序呈现(pieChartDiv,tableDiv),但它们以相反的顺序呈现(tableDiv,pieChartDiv).

这是正常的行为吗?如何按声明项目的顺序更新组件列表?

ajax jsf primefaces jsf-2

4
推荐指数
1
解决办法
3万
查看次数

标签 统计

ajax ×1

jsf ×1

jsf-2 ×1

primefaces ×1