【问题标题】:Find DataScroller current page查找 DataScroller 当前页面
【发布时间】:2011-04-26 14:12:39
【问题描述】:

我正在使用带有 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;
    }

}

谢谢

【问题讨论】:

    标签: jsf richfaces datascroller


    【解决方案1】:

    您无需手动设置 testBean.myPage 。当您使用 &lt;rich:datascroller&gt; 来回导航时,它将自动设置为新的页码

    要以编程方式更改页面值,只需在某些操作方法中为testBean.myPage 分配一个新的页码。然后重新渲染&lt;rich:datascroller&gt;

    【讨论】:

    • 谢谢肯。但是,如何访问和更改支持 bean 中的页面值? (无需用户在前端选择页码)
    • 嗨 Mcloving。我刚刚更新了我的答案来回答你的问题
    【解决方案2】:

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

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

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

    【讨论】:

      猜你喜欢
      • 2012-11-12
      • 1970-01-01
      • 1970-01-01
      • 2013-05-09
      • 2012-03-18
      • 1970-01-01
      • 1970-01-01
      • 2021-09-02
      • 1970-01-01
      相关资源
      最近更新 更多