可以用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. (转)Git Gui for Windows的建库、克隆(clone)、上传(push)、下载(pull)、合并

    原文地址: http://blog.csdn.net/fym0512/article/details/7713006 本教程将讲述:gitk的Git Gui的部分常用功能和使用方法,包括:建库.克隆( ...

  2. Oracle基础 数据泵导出/导入Expdp/impdp(转)

    一.EXPDP和IMPDP使用说明 Oracle Database 10g引入了最新的数据泵(Data Dump)技术,数据泵导出导入(EXPDP和IMPDP)的作用 1)实现逻辑备份和逻辑恢复. 2 ...

  3. css+div网页设计(一)--基础知识

    css是网页制作不可缺少的部分,我会用三篇博客为大家展示css的基本用法. 关于css+div的整体结构图总结如下: 本篇博客主要介绍css的基础知识. 一.css概念; css(级联样式表):它是一 ...

  4. EasyGUI的安装

    1.下载EasyGUI 在官方网站上下载http://easygui.sourceforge.net/将安装包下载下来,放到桌面上并解压. 2.安装EasyGUI ①在开始菜单的搜索中输入cmd,打开 ...

  5. codeforces 677A A. Vanya and Fence(水题)

    题目链接: A. Vanya and Fence time limit per test 1 second memory limit per test 256 megabytes input stan ...

  6. BZOJ 2456

    Description 给你一个n个数的数列,其中某个数出现了超过n div 2次即众数,请你找出那个数. Input 第1行一个正整数n.第2行n个正整数用空格隔开. Output 一行一个正整数表 ...

  7. SQL server 2008 建立新用户

    进入Instance下的‘安全性’->登录名, 可以选择SQL server 验证,‘强制实施密码策略’.’状态‘ 为启用. 在使用的数据库下‘安全性’->登录名,选择‘登录名’,输入之前 ...

  8. IntelliJ IDEA 中集成使用git(2015年06月10日)

    前提:需要有一个git账号,https://github.com/ 1.首先需要下载一个Github,https://windows.github.com 安装之后的界面是酱紫的,非常简洁美观 2.在 ...

  9. Android中Json数据读取与创建

    一:  Json的特性和在数据交互中的地位就不用说了,直接看案例. 首先在android studio中创建assets文件目录,用于存放Json数据文件,android studio 1.3 默认项 ...

  10. 无限极分类sql数据库的设计

    --创建测试数据表tb ) , pid ) , name )) ' , null , '广东省') ' , '广州市') ' , '深圳市') ' , '天河区') ' , '罗湖区') ' , '福 ...