EXTJS 4.2 资料 控件之combo 联动
写两个数据源:
1.IM_ST_Module.js
{
success:true,
data:[
{ ModuleId: '1', ModuleName: '资讯' }
, { ModuleId: '2', ModuleName: '交流' }
, { ModuleId: '3', ModuleName: '图集' }
, { ModuleId: '4', ModuleName: '商品' }
]
}
2.IM_ST_Module_subl.js
{
success:true,
data: [
{ ModuleId_sub: '01', ModuleName_sub: '新闻',ModuleId:'1' }
, { ModuleId_sub: '02', ModuleName_sub: '文章',ModuleId:'1' }
, { ModuleId_sub: '03', ModuleName_sub: '娱乐',ModuleId:'1' }
, { ModuleId_sub: '04', ModuleName_sub: '下载',ModuleId:'1' }
, { ModuleId_sub: '11', ModuleName_sub: '交流01',ModuleId:'2' }
, { ModuleId_sub: '12', ModuleName_sub: '交流02',ModuleId:'2' }
, { ModuleId_sub: '13', ModuleName_sub: '交流03',ModuleId:'2' }
, { ModuleId_sub: '14', ModuleName_sub: '交流05',ModuleId:'2' }
, { ModuleId_sub: '21', ModuleName_sub: '图集21',ModuleId:'3' }
, { ModuleId_sub: '22', ModuleName_sub: '图集22',ModuleId:'3' }
, { ModuleId_sub: '23', ModuleName_sub: '图集23',ModuleId:'3' }
, { ModuleId_sub: '24', ModuleName_sub: '图集24',ModuleId:'3' }
, { ModuleId_sub: '25', ModuleName_sub: '图集25',ModuleId:'3' }
, { ModuleId_sub: '26', ModuleName_sub: '图集26',ModuleId:'3' }
, { ModuleId_sub: '31', ModuleName_sub: '商品31',ModuleId:'4' }
, { ModuleId_sub: '32', ModuleName_sub: '商品32',ModuleId:'4' }
, { ModuleId_sub: '33', ModuleName_sub: '商品33',ModuleId:'4' }
]
}
页面JS代码:
1.定义模型、 store
//下拉框模块数据开始
Ext.define("ModuleModel", {
extend: "Ext.data.Model",
fields:
[{ name: "ModuleId", type: "string" },
{ name: "ModuleName", type: "string" },
{ name: "ModuleId_sub", type: "string" },
{ name: "ModuleName_sub", type: "string" }]
}); var comboData_Module = Ext.create("Ext.data.Store", {
model: "ModuleModel",
autoLoad: true,
proxy: {
type: "ajax",
url: "/UI/Js/InformationManagement_Extjs4.2/Data/IM_ST_Module.js",
reader: {
type: "json",
root: "data"
}
}
}); var comboData_Module_sub = Ext.create("Ext.data.Store", {
model: "ModuleModel",
proxy: {
type: "ajax",
url: "/UI/Js/InformationManagement_Extjs4.2/Data/IM_ST_Module_subl.js",
reader: {
type: "json",
root: "data"
}
}
});
//下拉框模块数据结束
2.控件:combo
{
xtype: "fieldcontainer",
layout: "hbox",
items: [
{
xtype: 'combo',
name: 'ModuleId', allowBlank: false,
fieldLabel: '来自模块', width: 300,
store: comboData_Module,
emptyText: '选择模块...',
valueField: "ModuleId",
displayField: "ModuleName",
mode: 'local',//local
editable: false,
triggerAction: 'all',
allowBlank: false,
autoload: true,
listeners: {
change: function (field, newValue, oldValue, op) {
//当下拉框选择改变的时候,也就是原值不等于新值时
if (newValue != oldValue) {
//清空原来的下拉框
form_Step3_1_left.form.findField('ModuleIdsub').clearValue();
//过滤数据源
comboData_Module_sub.clearFilter();
comboData_Module_sub.filterBy(function (item) {
return item.get("ModuleId") == newValue;
});
//绑定数据源
form_Step3_1_left.form.findField('ModuleIdsub').bindStore(comboData_Module_sub);
}
}
}
},
{
xtype: 'combo',
name: 'ModuleIdsub', allowBlank: false,
fieldLabel: '', width: 200,
store: comboData_Module_sub,
emptyText: '选择子模块...',
valueField: "ModuleId_sub",
displayField: "ModuleName_sub",
mode: 'local',//local
editable: false,
triggerAction: 'all',
allowBlank: false
}
]
}
相关链接:http://www.cnblogs.com/mayantao/p/extjs4.html
EXTJS 4.2 资料 控件之combo 联动的更多相关文章
- EXTJS 3.0 资料 控件之 combo 用法
EXTJS combo 控件: 1.先定义store //年款 var comboData_ReleasYear = [ ['], ['], ['], ['] ]; 2.定义combo控件 { lay ...
- EXTJS 3.0 资料 控件之 html 潜入label用法
这是在Extjs 中插入html 控件label! html: "<div><label id='howMany'>您共选中了</label><br ...
- EXTJS 4.2 资料 控件textfield中fieldLabel去掉冒号,控件label的长度
代码: labelSeparator: '', // 去掉laebl中的冒号 labelWidth: 10,//控件label的长度
- EXTJS 4.2 资料 控件之Grid 那些事
最近在学习Extjs4.2 ,积累文章,看得不错,再此留年: //表格数据最起码有列.数据.转换原始数据这3项 Ext.onReady(function(){ //定义列 var columns = ...
- EXTJS 4.2 资料 控件之Grid 行编辑绑定下拉框,并点一次触发一次事件
主要代码: { header: '属性值', dataIndex: 'PropertyValueName', width: 130, editor: new Ext.form.field.ComboB ...
- EXTJS 4.2 资料 控件之Window窗体自动填充页面
1.html页面代码: <div id="component" style="width:100%;height:100%"> <body&g ...
- EXTJS 4.2 资料 控件之Grid Columns 列renderer 绑定事件
columns: [ { header: '序号', xtype: 'rownumberer', align: 'center', width: 100 }, { header: 'CompanyId ...
- EXTJS 4.2 资料 控件之checkboxgroup的用法(动态数据)
在开发中遇到两种情况:第一在新增窗体时,要动态加载CheckBox项:第二在修改时不但需要加载所有CheckBox项,还要并且选中之前新增时的选项 如图这是在修改页面的效果: 1.在新增窗体中动态加载 ...
- EXTJS 4.2 资料 控件之radiogroup 的用法
最近在EXTJS4.2开发项目,radiogroup的用法,主要是和grid之间的编辑功能:看了好多资料都不对,特此在这里备注记录 代码如下, 1.这是一段Win窗体上的两个单选按钮,设置单选按钮都是 ...
随机推荐
- Linux vsftp
本机环境CentOS-6.6-i386-bin-DVD1.iso安装盘.安装时选择minimal模式.本机IP地址配置为192.168.0.211. 1.查询系统是否已安装了vsftpd [root@ ...
- C# 学习笔记02 ADO.net
DataSet ado.net DataSet 的设计已明确指出它可独立于任何资料来源外而存取资料.因此,它可与多个不同的资料里来源搭配使用.与 XML 资料搭配使用,或用于管理应用程序的本机资料.D ...
- C标准库函数实现之strstr(转)
看下Linux下的实现: char *strstr(const char *s1, const char *s2) { size_t l1, l2; l2 = strlen(s2); if (!l2) ...
- 第二篇、微信程序尺寸rpx
微信小程序尺寸单位rpx以及样式相关介绍rpx单位是微信小程序中css的尺寸单位,rpx可以根据屏幕宽度进行自适应.规定屏幕宽为750rpx.如在 iPhone6 上,屏幕宽度为375px,共有750 ...
- C++转到C#历程零基础知识(持续增加)
1.命名空间.类和源文件的关系:几个源文件用同一个命名空间时候,那么这几个源文件中的各个类之间的调用时可行的.他不会根据你的源文件分离而分开,因为最终编译后生成的是dll,这里来看你的几个源文件是没有 ...
- (转)Mongodb相对于关系型数据库的优缺点
与关系型数据库相比,MongoDB的优点:①弱一致性(最终一致),更能保证用户的访问速度:举例来说,在传统的关系型数据库中,一个COUNT类型的操作会锁定数据集,这样可以保证得到“当前”情况下的精确值 ...
- (转)实战Memcached缓存系统(7)Memcached的一些基础FAQ
1. Memcached是什么? Memcached是分布式的内存对象缓存系统. 2. Memcached的基本数据结构是什么? Memcached是基于Key/Value对的HashMap.每一对, ...
- iOS进阶——可取消的block
+ (id)performBlock:(void (^)())aBlock onQueue:(dispatch_queue_t)queue afterDelay:(NSTimeInterval)del ...
- C++ VARIANT 学习小记录
一:为什么会有这个? 目前,计算机语言有很多(大哥,为什么不能就那么一样呢?),如C++.Java,此外还有JavaScript.VBScript等脚本语言,它们自立门派,各自维护自己的数据类型. C ...
- Cursor--游标
游标--cursor['kɜːsə] 概念: 在执行SQL语句时,Oracle服务器将分配一个内存区域,不仅存储这个语句,还存储语句的结果 — 称为 ...