Store filter
by kzoon
HTML
<link rel="stylesheet" href="http://dev.sencha.com/deploy/ext-3.3.1/resources/css/ext-all.css">
<script src="http://dev.sencha.com/deploy/ext-3.3.1/adapter/ext/ext-base.js"></script>
<script src="http://dev.sencha.com/deploy/ext-3.3.1/ext-all.js"></script>
<link rel="stylesheet" type="text/css" href="http://cdn.sencha.com/ext-3.4.0/resources/css/ext-all.css" />
<script type="text/javascript" src="http://cdn.sencha.com/ext-3.4.0/adapter/ext/ext-base-debug.js"></script>
<script type="text/javascript" src="http://cdn.sencha.com/ext-3.4.0/ext-all-debug.js"></script>
<div id="test"></div>
CSS
#test {
margin:20px;
}
JavaScript
Ext.onReady(function () {
var store = new Ext.data.ArrayStore({
fields: [
'bannerid',
'banner'],
filters: [{
property: "banner",
value: "XXX",
anyMatch: true
}]
});
Ext.ns('MyApp');
MyApp.MyCombo = Ext.extend(Ext.form.ComboBox, {
hideLabel: false,
xtype: 'combo',
valueField: 'bannerid',
displayField: 'banner',
hiddenName: 'bannerid',
triggerAction: 'all',
forceSelection: true,
mode: 'local',
editable: false,
lazyRender: true,
store: store
});
var combo_banner1 = new MyApp.MyCombo({
id: 'combo_banner1',
name: 'combo_banner1',
fieldLabel: 'Banner 1'
});
var form = new Ext.form.FormPanel({
border: false,
items: [
combo_banner1]
});
var panel = new Ext.Panel({
title: 'CheckBoxGroup',
renderTo: 'test',
padding: '10',
items: form,
fbar: [{
text: 'filter',
handler: function () {
store.filter([{
property: "banner",
value: "XXX",
anyMatch: true
}]);
}
}]
});
var data = [
[1, 'Banner One'],
[2, 'Banner Two'],
[3, 'Banner Three'],
[4, 'Banner Fourteen'],
[5, 'Banner Fifteen'],
[6, 'Banner Sixty Seven'],
[7, 'Banner XXX Seventy One'],
[8, 'Banner Eighty Five'],
[9, 'Banner Nine'],
[11, 'XXX Banner XXXX'],
[10, 'Banner Ten']
]
store.loadData(data);
store.setFilters([{
property: "banner",
value: "XXX",
anyMatch: true
}]);
});