2010-11-19 15 views
1

Disk belleği araç çubuğuna sahip temel bir kılavuz oluşturdum. Herhangi bir nedenle, 0 dizinine yüklediğimde, metin "Sayfa 1/5'i görüntülüyor" yazsa bile Sonraki Sayfa düğmesi devre dışı bırakılmıştır. Mağaza yük paramlarında 0'dan yüksek bir şey seçersem, sayfa ileri ve geri yapmamı sağlar, ancak sayfaların maksimum sayısını doğru göstermez ve ilk sayfaya geri dönersem, bir sonraki düğme bir kez tekrar devre dışı.ExtJS Kılavuz İzleme: sonraki düğme devre dışı!

Herhangi bir fikrin var mı?

function getBugGrid(activityPanelWrapper){ 
    var pageSize = 5; 
    var bugStore = new Ext.data.JsonStore({ 
              reader: new Ext.data.JsonReader({ 
                      totalProperty: 'total_count' 
                      }), 
              autoLoad: {params:{start: 0, limit: pageSize}}, 
              autoDestroy: true, 
              url: '/bugs/fetch', 
              idProperty: 'id', 
              region: 'center', 
              root: 'data', 
              storeId: 'bugStore', 
              fields: [...] 
             }); 

    var columnModel = new Ext.grid.ColumnModel({ 
               defaults: { 
               width: 120, 
               sortable: true 
               }, 
               columns: [...] 
              }); 

    return new Ext.grid.GridPanel({ 
             region: 'center', 
             store: bugStore, 
             colModel: columnModel, 
             trackMouseOver:false, 
             loadMask: true, 
             sm: new Ext.grid.RowSelectionModel({singleSelect:true}), 
             listeners: { 
             rowclick: { 
              fn: function(grid, rowIndex, event) { 
              var bug_id = grid.store.getAt(rowIndex).id; 
              Ext.getCmp('activity-panel').load(activity_lines_path(bug_id)); 
              } 
             } 
             }, 
             bbar: new Ext.PagingToolbar({ 
                    pageSize: pageSize, 
                    store: bugStore, 
                    displayInfo: true, 
                    displayMsg: 'Displaying topics {0} - {1} of {2}', 
                    emptyMsg: "No topics to display" 
                    }) 
            }); 
} 

JSON yanıtı:

{"data":[{ bug 1 },{ bug 2 },{ bug 3 },{ bug 4 },{ bug 5 }], 
"errors":{}, 
"total_count":25} 
+0

Mağazanızın geri gönderdiği JSON nasıl görünüyor? – Jason

+0

JSON eklendi. Bir göz attığın için teşekkürler! –

cevap

2

Sen JsonReader içinde TotalProperty okumuyorsun ... Sen Autoload Bu yapılandırma eklemem gerekiyor

...

var bugStore = new Ext.data.JsonStore({ 
    autoDestroy: true, 
    url: '/bugs/fetch', 
    idProperty: 'id', 
    root: 'data', 
    storeId: 'bugStore', 
    fields: [ ... ] 
    autoLoad: {params:{start: 0, limit: pagesize}} 
}); 

Ayrıca JSON mağazanızda bir JSON okuyucu tanımlayabilirsiniz:

});

+0

Bu özellikleri ekledim, ancak sonraki düğme hala devre dışı. Verebileceğim başka bir bilgi var mı? –

+1

Önerilen bir JsonReader ile bir Mağaza'ya geçtiğimde sorun giderildi. Yardımlarınız için çok teşekkür ederim. :) –

+0

Ben de aynı sorunla karşı karşıyayım ama JsonReader ile mağaza kullandığımda bile sorun çözülmez .. Herhangi bir yardım takdir edilir. –

İlgili konular