2013-07-02 47 views
0

我有兩個日曆控件和一個命令按鈕。基本上我想給一個日期範圍從數據庫中選擇數據,然後當我按下命令按鈕時,數據表顯示在對話框中,問題是java bean類正在工作它正在加載我想要的確切數據,但數據表不刷新與命令按鈕點擊 我的代碼給出;Datatable不刷新與AJAX

<h:form id="form" >   
    <p:calendar value="#{calendarBean.dateFrom}" id="calFrom" pattern="yyyy-mm-dd"> 
     <p:ajax event="dateSelect" listener="#{calendarBean.handleDateSelectFrom}" /> 
    </p:calendar> 
    <p:calendar value="#{calendarBean.dateTo}" id="calTo" pattern="yyyy-mm-dd"> 
     <p:ajax event="dateSelect" listener="#{calendarBean.handleDateSelectTo}" /> 
    </p:calendar> 
    <p:commandButton value="Submit" action="#{calendarBean.submit()}" update="fTable" onclick="aDlg.show()"> 
     <f:ajax render=":form:fTable" execute="@form"></f:ajax> 
    </p:commandButton> 

    <p:dialog id="aDialog" header="Filter List" widgetVar="aDlg" 
          modal="true" showEffect="explode" 
          hideEffect="explode" >          
    <p:panel id="pnl"> 
     <p:dataTable id="fTable" value="#{calenderBean.list}" var="row" > 
      <p:column headerText="ID"> 
       <h:outputText value="#{row.ID}"/> 
      </p:column> 
      <p:column headerText="Name"> 
       <h:outputText value="#{row.Name}"/> 
      </p:column> 
      <p:column headerText="Time"> 
       <h:outputText value="#{row.Time}"/> 
      </p:column> 
      <p:column headerText="User"> 
       <h:outputText value="#{row.userName}"/> 
      </p:column> 
     </p:dataTable> 
     </p:panel>     
    </p:dialog> 
</h:form> 

親切指導我關於這個問題

回答

0

首先要做的是,刪除f:ajax,它對Primefaces不起作用。此外,update屬性應該盡一切努力。
這就是說,我的代碼與您的代碼非常相似,而且運行良好。
如果刪除f:ajax不工作,嘗試檢查您的管理bean的作用域(可能是它的請求範圍,並與每個請求的數據被重新初始化)

+0

我已刪除了F:AJAX ,而我的託管bean範圍是會議範圍,但仍然有相同的問題 – WiXXeY

+0

請給你的託管bean代碼 –

+0

Thanx @Laabidi我已經解決了這個問題..問題是我沒有寫入setter和getter從列表中的數據表被填充。無論如何thanx你的時間 – WiXXeY

0

嘗試更新對話框來代替。 update =「fTable」

+0

我嘗試過,但同樣的問題 – WiXXeY