在Backing Bean中控制dataScroller实现翻页

在Backing Bean中控制dataScroller实现翻页
用Tomahawk的<h:dataScroller>时, 如果在表格中增加了操作控件,点击后会对表的行数产生影响时,就需要在backing bean的action method里对表格进行翻页。例如,表格的每一行有个“删除”按钮,在该按钮的监听函数里对数据库进行删除操作后需要更新表格内容,这时候如果删除的正好是最后一页的最后一条记录,则更新表格的dataModel后,表格仍停留在最后一页,但没有显示任何记录,需要手动翻到前一页才能看到其他记录,行为十分怪异。因此需要在监听函数里判断当前删除的时候为最后一页的最后一条记录,如果是的话就通过程序翻到前一页。
具体实现如下:
在表格所在页面的backing bean里增加一个HtmlDataScroller成员变量,并设置它的setter和getter,再通过页面上的dataScroller控件中的binding属性把该控件与成员变量联系起来,然后在按钮监听处理中对该控件进行操作。要把表格定位在某一页,需要用到HtmlDataScroller的getUIData().setFirst()方法。
public   class  PageBean {
  
private HtmlDataScroller scroller = null;
  
public HtmlDataScroller getScroller(){
    
return scroller;
  }

  
public void setScroller(HtmlDataScroller scroller){
    
this.scroller = scroller;
  }

  
public String buttonListionMethod(){
    
    scroller.getUIData().setFirst(
0);
    
  }


你可能感兴趣的:(在Backing Bean中控制dataScroller实现翻页)