【问题标题】:Prime Faces Collector Adding in the reverse orderPrimefaces Collector 以相反的顺序添加
【发布时间】:2012-09-18 13:47:18
【问题描述】:

我正在使用素面收集器组件,当用户将项目添加到列表时,它会将记录添加到列表的末尾。是否有任何简单的方法可以将项目添加到列表顶部?

【问题讨论】:

    标签: jsf-2 primefaces


    【解决方案1】:

    您可以像这样简单地反转 java 中的列表。

    XHTML

    <p:collector value="#{createBookBean.book}"   
                            addTo="#{createBookBean.books}" />  
    

    管理豆

       private List<Book> books = new ArrayList<Book>(); 
    
        public List<Book> getBooks() {
               **Collections.reverse(this.books);**
        return books;
    }
    
    public void setBooks(List<Book> books) {
        this.books = books;
    }
    

    【讨论】:

    • 在 JSF 中,可以多次调用 getter 或 setter,因为浏览器会创建多个请求来加载页面。这将多次反转集合,并可能导致奇怪的结果。
    【解决方案2】:

    当您将项目添加到绑定列表时,您可以在托管 bean 中使用 .add(0, item)。它将在集合开始时添加所需的项目。

    private List<Item> listItems = new ArrayList<Item>(); 
    
    public void onAddListItem(){
       listItems.add(0, new Item());
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-31
      • 2016-04-22
      • 2023-04-01
      • 2013-02-05
      • 2011-11-12
      • 1970-01-01
      • 2016-09-20
      相关资源
      最近更新 更多