2012-03-23 61 views
0

我想要做的就是用下面的參數加載商店,所以我只得到我商店的前十項。用參數裝載商店

app.stores.actualites.load({ 
    params : { 
     start:0, 
     limit:10, 
    }, 
    callback : function(records, operation, success) { 
     app.loadmask.hide(); 
    } 
});  

但是,這不起作用,它會返回所有18個商店項目。

如果我把開始參數設置爲1,它將返回17個項目,所以這個參數正在工作,但不是其他項目。

更新:店內碼

app.stores.actualites = new Ext.data.Store({ 
    model: 'app.models.Actualites', 
    proxy: { 
     type: 'ajax', 
     url: app.stores.baseAjaxURL + '&jspPage=%2Fajax%2FlistActualites.jsp', 
     reader: { 
      type: 'json', 
      root: 'actualite', 
      successProperty: 'success', 
      totalProperty: 'total', 
      idProperty: 'blogEntryInfosId' 
     } 
    } 
}); 

這裏奇怪的是,當我嘗試的URL在瀏覽器中,並添加&開始= 0 &上限= 1它工作得很好......

更新:嘗試用extraParams

我也試圖與extraParams做到這一點,但這仍然無法正常工作

app.stores.actualites.getProxy().extraParams.start = 1; 
app.stores.actualites.getProxy().extraParams.limit = 2; 
app.stores.actualites.load({ 
    callback : function(records, operation, success) { 
     app.loadmask.hide(); 
    } 
}); 
+0

你可以給代碼在服務器上處理這個加載請求嗎? – 2012-03-23 18:36:38

回答

0

這聽起來不可思議,但我改的帕拉姆「限價」,以在客戶端和服務器上,它的工作「一站式」的名字......

1

分頁功能必須在您的服務器端實際實現。 Sencha只會保留這些頁面,並會向您發送適當的startlimit值。您需要在服務器端腳本訪問這些值,並根據這些值返回適當的結果。

如果您使用的是列表,那麼您可以使用Sencha的內置ListPaging插件,該插件會自行處理啓動/限制參數。

+0

是的,但它在瀏覽器上工作正常,當我添加&start = 0&limit = 1時...請參閱我的更新 – 2012-03-25 14:52:27

+0

好吧,那麼我認爲,因爲store load()函數採用Proxy配置,您需要使用「extraParams」的「params」。 – Swar 2012-03-26 06:12:30

0

它應該是這樣的:

app.stores.actualites.getProxy().setExtraParams({ 
         start:1, 
         limit:2 
        })