extjs 页面下拉列表的中加入一个之前写好的grid的方法
之前的代码是这样的,我想把这个ds放到一个下拉列表中变成这样的形式:请问应当如何实现,该大致怎么写呢,谢谢啦...
之前的代码是这样的,我想把这个ds放到一个下拉列表中 变成这样的形式:
请问应当如何实现,该大致怎么写呢,谢谢啦 展开
请问应当如何实现,该大致怎么写呢,谢谢啦 展开
1个回答
展开全部
Ext.define('GridCombo', {
extend : 'Ext.form.field.Picker',
alias : 'GridCombo',
width : 350,
emptyText : '报告人',
editable : false,
fieldLabel : '报告人',
labelWidth : 60,
labelAlign : 'right',
margin : '0 0 0 10',
codeRender : function(val) {
return val;
},
gridStore : Ext.create('Ext.data.Store', {
fields : ['name', 'company'],
autoLoad : true,
proxy : {
type : 'ajax',
url : url,
reader : 'json'
}
}),
setDisCode : function(code) {
this.disCode = code;
},
setDefualtValue : function() {
this.setValue(this.emptyText);
this.setDisCode("*");
},
getDisCode : function() {
return this.disCode;
},
loadData : function(data) {
this.gridStore.clearData()
this.gridStore.loadData(data);
},
getStore : function() {
return this.gridStore;
},
setStore : function(store) {
this.gridStore = store;
},
createPicker : function() {
var me = this;
var searchInput = Ext.widget('textfield', {
xtype : '',
fieldLabel : '姓名',
width : 150,
labelWidth : 30
});
var picker = Ext.create('Ext.grid.Panel', {
floating : true,
width : 350,
height : 300,
store : me.gridStore,
tbar : [searchInput, {
xtype : 'button',
text : '查询',
handler : filterGridStore
}],
columns : [{
dataIndex : 'name',
text : '姓名',
width : 100,
align : 'right',
renderer : me.codeRender
}, {
dataIndex : 'company',
text : '单位',
flex : 1
}]
});
function filterGridStore() {
var searcher = searchInput.getValue();
me.gridStore.filterBy(function(rec) {
var name = rec.get('name');
return name.indexOf(searcher) > -1;
});
}
picker.on('itemclick', function(view, rec, item, index, e,eOpts) {
var obj = rec.data;
me.setValue(obj.name);
me.setDisCode(obj.name);
me.collapse();
});
return picker;
}
});
var extendGridCombo = Ext.create(
GridCombo', {
layout : 'border'
});
想做的是下拉树吗?
追问
就是一下拉,不像是平常的下来列表只有名字,要像表格页面一样,分为名字部门电话的表格一样。我那个代码ds都有了,gridpanel也有了,就是不知道怎么把他们放如combobox里面,直接放入就什么都不显示。
追答
哦哦 ,对对下拉列表,不是下拉树,我说错了
我上面写的就是下拉列表,而且带搜索的。
具体的字段名和其他信息修改一下就可以。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询