查找DataScroller当前页面

时间:2011-04-26 14:12:40

标签: jsf richfaces datascroller

我正在使用带有dataScroller的dataTable。 我已将'Page'属性添加到我的dataScroller中,并将getter和Setter放入bean中。

如何检查用户在bean中的当前页面?

每次用户选择新页面,点击下一页,上一页等时,是否必须手动维护辅助bean值?

<a4j:outputPanel id="renderArea">
    <rich:dataTable id="testTable" rows="5" value="#{testBean.myList}" var="item">
        ....
    </rich:dataTable>
</a4j:outputPanel>

<!-- Get called when clicking on button inside renderArea -->
<a4j:commandButton id="HIDDENRERENDER"  reRender="renderArea,PTScroll" value="+test"  style="display:none"/> 

<a4j:outputPanel id="PTScroll">
    <h:panelGrid>
        <rich:datascroller  for="testTable" maxPages="20" renderIfSinglePage="false" page="#{testBean.myPage}" />
    </h:panelGrid>
</a4j:outputPanel>


public class testBean 
{
    private int myPage = 1;

    public void initialise()
    {
        this.setMyPage(0);
    }

    public int getMyPage()
    {
        return myPage;
    }

    public void setMyPage(int page)
    {
        this.myPage = page;
    }

}

由于

2 个答案:

答案 0 :(得分:2)

您无需手动设置testBean.myPage。当您使用<rich:datascroller>

来回导航时,它会自动设置为新的页码

要以编程方式更改页面值,只需在某些操作方法中为testBean.myPage分配新的页码。然后reRender <rich:datascroller>

答案 1 :(得分:0)

您使用什么范围来调用testBean?

试试这个,分页只在第一次起作用:

@Named
@Singleton
public class testBean {
....