2011-10-03 53 views
4

enter image description hereExtJS的4 - 在網格數據中不可見

我有以下代碼的簡單網格(連同存儲和模型的代碼)。

var containerDetailsGrid = Ext.create('Ext.grid.Panel', { 
    store: storeVarContainerDetails, 
    tbar:[ 
     { 
      xtype:'tbtext', 
      text:'Container Details' 
     } 
    ], 
    columns: [ 
     { 
      header  : 'Ctr Size', 
      flex  : 1, 
      dataIndex: 'ctrSize', 
      autoExpand:true, 
      align:'center' 
     } 
    ], 
    height: 100 
}); 

var storeVarContainerDetails = Ext.create('Ext.data.Store', { 
    model: 'VoyageMonitoringContainerDetailsModel', 
    proxy: { 
     type: 'ajax', 
     url: 'http://localhost/pnc/stores.php', 
     extraParams:{ 
      action:'containerDetails' 
     }, 
     reader: { 
      type: 'json' 
     } 
    }, 
    autoLoad:true 
}); 

Ext.regModel('VoyageMonitoringContainerDetailsModel', { 
    extend: 'Ext.data.Model', 
    fields: [ 
     {type: 'string', name: 'ctrSize'} 
    ] 
}); 

商店越來越加載和提取數據,但只是沒有得到顯示該數據或實際是在網格中可見。

當我檢查DOM中的網格元素時,我可以看到數據在網格表的'td'中,但是這些數據沒有顯示出來。

頁面上還有其他網格,但除此之外,所有網格都顯示數據。另外,控制檯也沒有錯誤。

任何人都可以請指出這一點,爲什麼它可能會發生?附件是更清晰的屏幕截圖。

PS:我正在使用ExtJS 4.

+1

我已經能夠找到背後的原因。當我將這個網格當作一個容器中的一個項目時,數據沒有顯示出來,但是如果我把這個網格作爲一個表單中的一個項目,那麼這個數據就會顯示出來。雖然這個問題現在已經解決了,但是誰能分享這種行爲背後的原因? – netemp

+0

Hello Netemp,當我在Store數據中顯示硬編碼數據時,我遇到了將數據加載到網格的問題,但是當我使用代碼與服務器數據進行通信時,不顯示可以幫助我嗎? – Ram

+0

我有服務這樣的http://本地主機:8080/Petcrumbs /構件/ getMemberList 請求參數: { 「PAGENUMBER」:5} 響應成功: { 「listOfMembers」: [ { 「姓名」 : 「測試Mmber4」, 「密碼」: 「287974」, 「性別」: 「男性」, 「joinedDate」: 「2013年9月17日」 } ], 「消息」:「會員成功檢索「, 」成功「:真 } – Ram

回答

1

發佈的解決方案作爲一個答案在這裏,以便它可以幫助別人尋找同樣的,也可以作爲回答我可以標記這個問題。解決方案是 - 不應將網格作爲表單中容器的子節點,而應該是表單中字段集的子節點。我不知道背後的原因,但適合我。希望這可以幫助別人。

0

你在商店試過這個嗎?

 autoLoad :true 
+0

那麼,autoLoad:true就在那裏。另外,正如我在上面的評論中提到的,儘管我一直無法確定導致它的原因的確切原因,但我一直能夠解決這個問題。 – netemp