2017-04-01 27 views
0

好男人,我知道像我這樣的另一個相關的問題,但我已經嘗試瞭解決方案,但仍然沒有工作。我的繼承人JSF如何使用jsf primefaces選擇所有booleancheckbox?

<h:form id="store-news-check"> 
        <ul style="list-style: none;padding:5px;margin-top:0px"> 
         <ui:repeat value="#{dashboardBean.storeNewsList}" var="item" varStatus="status"> 
          <li style="display:inline-flex;width: 100%;margin-bottom: 5px"> 
           <p:selectBooleanCheckbox value="#{item.cmsCheck}" style="margin-bottom:0px" /> 
           <a href="#" style="color:#333"><span class="task-name">#{item.storeId.name} - ${fn:substring(item.title,0, 10)} ....</span></a> 
          </li> 
         </ui:repeat> 
        </ul> 

        <p:commandButton actionListener="#{dashboardBean.selectAllNews()}" value="Select All" update="@form" icon="ui-icon-send" style="border-radius:3px 0px 0px 3px"/> 
        <p:commandButton value="Save" icon="ui-icon-send" style="border-radius:0px 3px 3px 0px"/> 
       </h:form> 

和繼承人我支持bean

@PostConstruct 
    public void init() { 
     storeNewsList = storeNewsFacade.findStoreNewsDashbroad(); 

    }   

private List<StoreNews> storeNewsList;  

    public List<StoreNews> getStoreNewsList() { 

      return storeNewsList; 

     } 

    public void selectAllNews(){ 
      for(StoreNews sn:storeNewsList){ 
       sn.setCmsCheck(true); 
      } 

      infoMessage("check all store news"); 
     } 

希望你們能幫助我,謝謝!

+0

因此,**發生了什麼......網絡響應如何,服務器上的列表是什麼樣子,當它再次被檢索時......除了指出「不起作用」之外,還有很多事情需要調查' – Kukeltje

+0

對不起,列表的第一個條件是所有的列表都沒有勾選,然後我想當我點擊選擇所有按鈕時,列表轉到檢查。那是男人。 –

回答

0

我想說你只需要更新複選框。例如用

<p:commandButton actionListener="#{dashboardBean.selectAllNews()}" update="@form" ... /> 

另外type="button"上的保存按鈕似乎不正確。

+0

似乎你總是在getter中調用findStoreNewsDashbroad(),那麼當你再次調用某個服務時,它如何顯示你剛選擇的內容?當你在xhtml中說「#{dashboardBean.storeNewsList}」時,這意味着它調用了getter。在我看來,getStoreNewsList()必須總是返回storeNewsList,並且您必須在@ PostConstruct方法中調用findStoreNewsDashbroad()方法 –

+0

我再次更新我的代碼man。請檢查。 –

+0

對我來說似乎更好,那麼現在會發生什麼?我認爲這個bean必須至少是viewscoped –

相關問題