2011-07-25 17 views
7

मैं फ़िल्टर का उपयोग करने वाले ग्रिड पर काम कर रहा हूं, लेकिन यह केवल पहले पृष्ठ को फ़िल्टर करता है। जब मैं 'अगला' पर क्लिक करता हूं तो यह मेरे फ़िल्टर के बारे में भूल जाता है और रिकॉर्ड के अगले सेट को लोड करता है। पेजिंग से रिकॉर्ड के अगले सेट को लोड करने के लिए 'अगली' पर क्लिक करने पर भी मैं फ़िल्टर को याद रखूंगा?ExtJS पेजिंग ग्रिड फ़िल्टर केवल पहला पृष्ठ

धन्यवाद, एसएस

उत्तर

6

आप दुकान के baseParams में फ़िल्टर पैरामीटर सेट करना होगा। स्टोर पर load कॉल में अपने फ़िल्टर पैरामीटर को पास करने से केवल उन्हें पहले लोड कॉल — के लिए उपयोग किया जाएगा, जो पेजिंग टूलबार द्वारा किए गए बाद की कॉल उन्हें पास नहीं करेंगे।

store.setBaseParam('query', 'search-text'); // always send 'query' 
store.load({ params: { start: 0, limit: 40 } }); 
// this will send: 
// { query: 'search-text', start: 0, limit: 40 } 

store.load({ params: { query: 'bob', start: 41, limit: 40 } }); 
// baseParams overridden by load params 
// { query: 'bob', start: 41, limit: 40 } 

store.load(); // only sends baseParams 
// { query: 'search-text' } 

ExtJS Ext.data.Storedocs विवरण है।

+0

बहुत बढ़िया, धन्यवाद WES मैं इसे आज़माउंगा और आपको बता दूंगा। –

-1

baseParams सेट करना, ऊपर दिए गए उत्तर में, केवल EXTJS 3.x या उससे कम के लिए है। store.getProxy().extraParam= A JSON ENCODED QUERY की तरह: ExtJS 4.xx के लिए, हम दुकान के प्रॉक्सी में, एक extraParam आपकी क्वेरी के साथ जोड़ना होगा store.getProxy().extraParam= Ext.JSON.encode({'sort':[{'id':'ASC'}]}) एक उचित विन्यास के लिए, आपके अनुरोध की जांच, अपने नाविक डेवलपर के उपकरणों में या अपने बैकएंड में

संबंधित मुद्दे