Javascript 在ExtJS中过滤组合框
我在应用程序中使用ExtJS的组合框构建了一个查询生成器 当用户从组合框中选择要搜索的字段时,他可以选择再添加两个组合框以缩小搜索范围 “我的组合框”的存储区有六项-当用户选择这六项中的一项时,如果他添加到另一个组合框中,则该特定项不应可供选择 我的想法是将combobox存储区放入一个变量中,并以某种方式删除第一个值,然后将其加载到新添加的combobox中 有什么简单的方法可以做到这一点吗 干杯 编辑 我做这个例子是为了使问题更容易理解Javascript 在ExtJS中过滤组合框,javascript,extjs,combobox,filter,Javascript,Extjs,Combobox,Filter,我在应用程序中使用ExtJS的组合框构建了一个查询生成器 当用户从组合框中选择要搜索的字段时,他可以选择再添加两个组合框以缩小搜索范围 “我的组合框”的存储区有六项-当用户选择这六项中的一项时,如果他添加到另一个组合框中,则该特定项不应可供选择 我的想法是将combobox存储区放入一个变量中,并以某种方式删除第一个值,然后将其加载到新添加的combobox中 有什么简单的方法可以做到这一点吗 干杯 编辑 我做这个例子是为了使问题更容易理解 Ext.require('*'); Ext.defi
Ext.require('*');
Ext.define('KeyValue', {
extend: 'Ext.data.Model',
fields: ['id', 'value']
})
Ext.onReady(function() {
var options = [{
id: 1,
value: 'One'
}, {
id: 2,
value: 'Two'
}, {
id: 3,
value: 'Three'
}, {
id: 4,
value: 'Four'
}, {
id: 5,
value: 'Five'
}, {
id: 6,
value: 'Six'
}];
var parent = new Ext.form.field.ComboBox({
store: {
model: KeyValue,
data: options
},
forceSelection: true,
editable: false,
displayField: 'value',
valueField: 'id',
queryMode: 'local',
listeners: {
select: function(cmb, records) {
var selected = records[0],
store = child.getStore(),
rec;
rec = store.getById(selected.getId());
store.remove(rec);
}
}
});
var child = new Ext.form.field.ComboBox({
store: {
model: KeyValue,
data: options
},
forceSelection: true,
editable: false,
displayField: 'value',
valueField: 'id',
queryMode: 'local'
});
new Ext.form.Panel({
width: 400,
renderTo: document.body,
items: [parent, child]
});
});
你在问什么?如何过滤组合框,或者如何实现整个功能?如何过滤组合框是的,基于我编辑的问题之前的值。啊,非常好。非常感谢!