可以用javascript的数组作为数据源,也可以用json作为数据源:

1.用javascript数组

var CountryCode = [
['93','Afghanistan(93)'],
['355','Albania (355)'],
['213','Algeria (213)'],
['684','American Samoa (684)'],
['376','Andorra (376)'],
['244','Angola (244)'],
.....
]

new Ext.form.ComboBox(...{
fieldLabel: 'Country Code',
name:'country_code',
forceSelection: true,
listWidth: 200,
store: new Ext.data.SimpleStore(...{
fields: ['value', 'text'],
data : CountryCode
}),
valueField:'value',
displayField:'text',
typeAhead: true,
mode: 'local',
triggerAction: 'all',
selectOnFocus:true,//用户不能自己输入,只能选择列表中有的记录
allowBlank:false
})

2:用json作为数据源

var comboOptions = new Ext.data.JsonStore(...{
url:'myurl',
fields: ['id','name']});

comboOptions.load();

new Ext.form.ComboBox(...{
fieldLabel: 'Management Level',
name:'group_id',
forceSelection: true,
listWidth: 150,
store: comboOptions,
valueField:'id',
displayField:'name',
typeAhead: true,
mode: 'local',
triggerAction: 'all',
selectOnFocus:true,
allowBlank:false
})

myurl输出的json数据格式如下:

[{"id":"1","name":"Super Admin"},{"id":"2","name":"Admin"}]

需要注意的是,如果返回的json数据有多列,需要在new JsonStore的时候,在fields一项中填写所有column的名字,否则不能填充combobox

  1. 第一种方式(这种方式,我在使用时,如果数据不是从后台传过来的就可以,如果是从后台传过来的就不行了,要使用第二种方式)、
  2. var CountryCode = [
  3. ['93','Afghanistan(93)'],
  4. ['355','Albania (355)'],
  5. ['213','Algeria (213)'],
  6. ['684','American Samoa (684)'],
  7. ['376','Andorra (376)'],
  8. ['244','Angola (244)']
  9. ]
  10. var checkupperson = new Ext.form.ComboBox({
  11. fieldLabel: '审核人',
  12. name:'checkupperson',
  13. forceSelection: true,
  14. listWidth: 200,
  15. store: new Ext.data.SimpleStore({
  16. fields: ['value', 'text'],
  17. data : CountryCode
  18. }),
  19. valueField:'value',
  20. displayField:'text',
  21. typeAhead: true,
  22. mode: 'local',
  23. triggerAction: 'all',
  24. selectOnFocus:true,//用户不能自己输入,只能选择列表中有的记录
  25. allowBlank:false,
  26. listeners:{
  27. select:function(){
  28. alert(this.value);
  29. }
  30. }
  31. });
  32. checkupperson.on('beforerender',function(){
  33. this.value=376;
  34. });
  35. 第二种方式:
  36. var depCombo = new Ext.form.ComboBox({
  37. fieldLabel:'部门',
  38. allowBlank: false,
  39. allowNegative: false,
  40. triggerAction: 'all',
  41. displayField :'depName',
  42. valueField :'depId',
  43. id:'test',
  44. store: new Ext.data.JsonStore({
  45. fields: ['depId','depName'],
  46. url: '../combobox.do?action=getDepartmentComboBox',
  47. autoLoad : true,
  48. listeners :{
  49. load:function(){
  50. Ext.getCmp('test').setValue(17);
  51. }
  52. } //在此加一个这个玩意,就可以了,呵呵,是在jsonstore中加的,注意
  53. }),
  54. editable :false
  55. });
第一种方式(这种方式,我在使用时,如果数据不是从后台传过来的就可以,如果是从后台传过来的就不行了,要使用第二种方式)、
var CountryCode = [
['93','Afghanistan(93)'],
['355','Albania (355)'],
['213','Algeria (213)'],
['684','American Samoa (684)'],
['376','Andorra (376)'],
['244','Angola (244)']
]
var checkupperson = new Ext.form.ComboBox({
fieldLabel: '审核人',
name:'checkupperson',
forceSelection: true,
listWidth: 200,
store: new Ext.data.SimpleStore({
fields: ['value', 'text'],
data : CountryCode
}),
valueField:'value',
displayField:'text',
typeAhead: true,
mode: 'local',
triggerAction: 'all',
selectOnFocus:true,//用户不能自己输入,只能选择列表中有的记录
allowBlank:false,
listeners:{
select:function(){
alert(this.value);
}
}
});
checkupperson.on('beforerender',function(){
this.value=376;
});
第二种方式:
var depCombo = new Ext.form.ComboBox({
fieldLabel:'部门',
allowBlank: false,
allowNegative: false,
triggerAction: 'all',
displayField :'depName',
valueField :'depId',
id:'test',
store: new Ext.data.JsonStore({
fields: ['depId','depName'],
url: '../combobox.do?action=getDepartmentComboBox',
autoLoad : true,
listeners :{
load:function(){
Ext.getCmp('test').setValue(17);
}
} //在此加一个这个玩意,就可以了,呵呵,是在jsonstore中加的,注意
}), editable :false
});
 
 
  1. 第三种方式:
第三种方式:
  1. bachLoad([xnStore,xqStore,jsStore], function(success){
  2. if (!success) {
  3. Ext.Msg.alert('提示', '数据加载失败,请联系系统管理员!');
  4. }else{
  5. xn = '${DQXN}';
  6. xq = '${DQXQ}';
  7. Ext.getCmp('cmb_xq').setValue('${DQXQ}');
  8. xqmc = Ext.getCmp('cmb_xq').getRawValue();
  9. }

extjs的combobox的用法的更多相关文章

  1. ExtJs 之 ComboBox级联使用

    刚接触ExtJs不到一周,项目使用ExtJs框架,有个版块用到了combobox的级联(两级),遇到了一系列的问题,两天来一直查API.网络资料,终于解决了. 先列出遇到的一系列问题(也许你也遇到过! ...

  2. ExtJS ComboBox的用法+代码

    Ext.onReady(function() { var store = Ext.create('Ext.data.Store', { autoLoad : true, fields : ['valu ...

  3. Extjs 让combobox写起来更简单

    也已经写了很久时间的extjs ,每次都用到很多的combobox,配置很多东西觉得实在是太麻烦,所以根据常用到的情况写了一个简便的combobox,再次记录下来,以免放在某个地方忘记了找不到了. 定 ...

  4. jquery,extjs中的extend用法小结

    在jquery中,extend其实在做插件时还是用的比较多的,今天同时小结jquery和ext js中 的extend用法,先来看jquery中的. 1)  extend(dest,src1,src2 ...

  5. Extjs之combobox联动

    Ext.Loader.setConfig({ enabled : true }); Ext.Loader.setPath('Ext.ux', '../extjs/ux'); Ext.require([ ...

  6. Qt下拉对话框 ComboBox的用法

    介绍 ComboBox是Qt的下拉菜单的一个控件,通过下拉菜单选择不同的选项,样式如图: 基本用法 m_ComBox = ui.comboBox; //设置默认显示值的索引,从0开始 m_ComBox ...

  7. 实用ExtJS教程100例-006:ExtJS中Window的用法示例

    在前面几个示例中,我们演示了MessageBox的各种用法,今天这篇文章将演示如何使用Window. 我们首先来创建一个窗口: var win = Ext.create("Ext.windo ...

  8. WPF的ComboBox简单用法

    1. ComboBox:下拉列表框 效果如下: 2.通常用法是 显示内容 + 选中内容后获得的值(也就是 Name = Value的键值对) 故以键值对来定义一个类,如: public class C ...

  9. Extjs 中combobox下拉框初始化赋值

    近日在工作中遇到一个需求,要求页面初始化的时候给dataGrid表插入一条数据. 前端使用的是Extjs框架,dataGrid表有四列,其中三列是类型为textbox,普通文本框,另外一列类型是com ...

随机推荐

  1. [Java] 模拟HTTP的Get和Post请求

    在之前,写了篇Java模拟HTTP的Get和Post请求的文章,这篇文章起源与和一个朋友砍飞信诈骗网站的问题,于是动用了Apache的comments-net包,也实现了get和post的http请求 ...

  2. sql over开窗函数

    1.使用over子句与rows_number()以及聚合函数进行使用,可以进行编号以及各种操作.而且利用over子句的分组效率比group by子句的效率更高. 2.在订单表(order)中统计中,生 ...

  3. 重构25-Introduce Design By Contract checks(契约式设计)

    契约式设计(DBC,Design By Contract)定义了方法应该包含输入和输出验证.因此,可以确保所有的工作都是基于可用的数据,并且所有的行为都是可预料的.否则,将返回异常或错误并在方法中进行 ...

  4. web 分类 和使用Dreamweaver

    1.iE 2.火狐的fox 3.谷歌的Chrome 在编写的代码要符合W3c统一的国际标准 二:使用Dreamweaver: Dreamweaver只能用辅助,生成的代码要修改,…… ———编写的代码 ...

  5. 【安卓面试题】简述一下Android系统的架构?

    安卓系统的架构分为四层:应用程序层,应用框架层,系统框架层和内核层. 应用程序层:开发者编写的供用户使用的应用 应用框架层:开发者构建应用程序可能用到的API, 例如ActivityManager 系 ...

  6. VMware系统运维(十三)部署虚拟化桌面 Horizon View Agent 5.2安装

    1.先打开安装程序如下所示 2.点击"下一步" 3.不接受,你能装吗?点击"下一步" 4.选择安装位置,点击"下一步" 5.开启3389和3 ...

  7. 怒刷DP之 HDU 1024

    Max Sum Plus Plus Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u S ...

  8. 使用Word 2013向cnblog发布博文

    Windows Live软件许久不更新,就想用手头的Word 2013作为cnblogs博客的撰写工具.在查看cnblogs关于Windows Live的配置说明时,发现下列有Word 2007的配置 ...

  9. hdu 4739 状压DP

    这里有状态压缩DP的好博文 题目:题目比较神,自己看题目吧 分析: 大概有两种思路: 1.dfs,判断正方形的话可以通过枚举对角线,大概每次减少4个三角形,加上一些小剪枝的话可以过. 2.状压DP,先 ...

  10. MongoDB - MongoDB CRUD Operations

    CRUD operations create, read, update, and delete documents. Create Operations Create or insert opera ...