/*******步骤有四个,缺一不可*********/

function () {xxxxxx = Ext.extend(construct, {InitControl: function () { var _this = this;
/*****************步骤一:建数据store ******************/
//一级下拉框数据(此处注意,一定要把store写在combobox控件定义的前面,否则无法加载数据)
          var moduleStore = new Ext.data.Store({ 
proxy: new Ext.data.HttpProxy({
type: 'ajax', url: '/xx//Getxx?c=' + (new Date()).toString(),
extraParams: { dept_Id: comboboxOutdept.getValue() },
reader: {
root: 'Rows', totalProperty: 'Total', type: 'json'
}
}),
autoLoad: true,
fields: ['ID', 'NAME','CODE'] //后台返回的字段名
});
/***********步骤二:建combobox对象并绑定store  ********/
            //一级下拉框绑定数据
var moduleCombo = new Ext.form.field.ComboBox({
fieldLabel: "申请医院",
columnWidth: .271, //调整下拉框宽度
labelAlign: 'right',
labelWidth: 60,
id: this.namespace + '_orgNameCombo',
store: moduleStore, //绑定数据store
editable: false,
displayField: "NAME",
valueField: "ID",
emptyText: "--请选择医院--",
queryMode: "local",
style: 'padding-top:20px;margin-left:30px;',
listeners: {
'select': function () {
//级联下拉框
comboboxdept.setValue('');
deptStore.load({ url: '/xx/GetDepts?c=' +
(new Date()).toString() + '&orgId=' + moduleCombo.getValue() });
}
}
}); //二级下拉框数据
var deptStore = new Ext.data.Store({
proxy: new Ext.data.HttpProxy({
type: 'ajax',
url: '/xx/GetDepts?c=' + (new Date()).toString(),
reader: {
root: 'Rows', totalProperty: 'Total', type: 'json'
}
}),
fields: ['ID', 'CODE', 'NAME']
}); //二级下拉框绑定数据
var comboboxdept = new Ext.form.ComboBox({
xtype: "combobox",
name: "Gender",
fieldLabel: "申请科室",
columnWidth: .271, //调整下拉框宽度
labelAlign: 'right',
labelWidth: 60,
id: this.namespace + '_deptCombo',
store: deptStore, //绑定数据store
editable: false,
displayField: "NAME",
valueField: "CODE",
emptyText: "--请选择科室--",
queryMode: "local",
style: 'padding-top:20px;margin-left:30px;'
});

//接上面同级

/**********步骤三:创建panel并将combobox控件绑定到界面****************/

this.bodyPanel = new Ext.Panel({
layout: 'border',
bodyStyle: 'padding:1px;',
defaults: { minHeight: 25, style: 'padding-top:1px;' },
items: [
{

xtype: 'panel', layout: 'column', style: 'padding-left:2px;',

columnWidth: 1, region: 'center', items: [
{
xtype: 'panel', layout: 'column', style: 'padding-left:2px;',

id: this.namespace + '_downLoadReferralRecord_first', columnWidth: 1, items: [
{

xtype: 'textfield', fieldLabel: '身份证号', labelWidth: 65, id: this.namespace + '_idno',
height: 25, emptyText: '请输入身份证号', labelAlign: 'right', columnWidth: .3, style: 'padding-top:10px;'
},

//或者直接扔combox进去

moduleCombo ,
comboboxdept

//换行写法,该写法会换行

{ xtype: 'label', columnWidth: .5, text: '' },
{ xtype: 'label', columnWidth: 1, height: 0, text: '', style: 'font-size:2px;' }

]},

。。。

/***********步骤四:触发store数据加载  *****************/

在 panel下的params,隔壁加个监听事件

],
listeners: {
render: function () {
//加载时的遮罩层
_this.mask = new Ext.LoadMask(_this.bodyPanel.getEl(), '数据交互中...');
_this.moduleStore.load();
_this.deptStore.load();
}
}

/**********步骤四:赋值store数据  ************/

在InitControl最后一个项加

Ext.apply(this, {
grid: grid, //列表对象
store: store,
moduleStore: moduleStore,  //不加的话会导致数据不会到后台去读取
deptStore: deptStore
});
}

,



  

EXT学习之——Ext下拉框绑定以及级联写法的更多相关文章

  1. EXT学习之——获取下拉框combobox的值与显示名

    //申请科室 var comboboxdept = new Ext.form.ComboBox({ xtype: "combobox", name: "Gender&qu ...

  2. jQ给下拉框绑定事件,为什么要绑定在框(select标签)上,而不是绑定在选项(option标签)上

    这是我在学习锋利的 jquery 书中 5.1.4 的代码时遇到的一个小问题,源代码如下: <head> <style type="text/css"> * ...

  3. knockoutjs foreach array绑定 表格 下拉框绑定

    转载http://desert3.iteye.com/blog/1480471 knockoutjs foreach array绑定 表格 下拉框绑定 博客分类: Javascript   动态表格使 ...

  4. vue select下拉框绑定默认值

    vue select下拉框绑定默认值: 首先option要加value值,以便v-model可以获取到对应选择的值 一.当没有绑定v-model,直接给对应的option加selected属性 二.当 ...

  5. DevExpress:下拉框绑定数据源 (ComboBoxEdit,LookUpEdit)

    DevExpress:下拉框绑定数据源 (ComboBoxEdit,LookUpEdit) DevExpress:下拉框绑定数据源 (ComboBoxEdit,LookUpEdit) // 设置下拉框 ...

  6. 商品类型的下拉框绑定一个事件,通过ajax获取属性

    html代码这么写 <!-- 商品属性 --> <table cellspacing="1" cellpadding="3" width=&q ...

  7. Winform 下拉框绑定问题

    在Winform中下拉框绑定的时候只能读到text属性值,Id的值不管怎么搞都读取不到,所以就百度找到了一种方式: public void CmdBind() { var data = _logic. ...

  8. easy ui 下拉级联效果 ,下拉框绑定数据select控件

    html代码: ①两个下拉框,一个是省,另一个市 <tr> <td>省:</td> <td> <select id="ProvinceI ...

  9. easy ui 下拉框绑定数据select控件

    easy ui 中的下拉框控件叫做select,具体代码如下: html代码:①.这是一个公司等级的下拉框 <tr> <td>公司等级:</td> <td&g ...

随机推荐

  1. python命令行下tab键补全命令

    在python命令行下不能使用tab键将命令进行补全,手动输入又很容易出错. 解决:tab.py #/usr/bin/env python # -*- coding:utf-8 -*- ''' 该模块 ...

  2. WINDOWS黑客基础(6):查看文件里面的导入表

    int main(void) { HANDLE hFile = CreateFile("D:\\Shipyard.exe", GENERIC_READ, FILE_SHARE_RE ...

  3. item30,最小的k个数

    剑指offer给出两类方法: 1,借助快排的思想,需要修改输入数组的元素,时间复杂度O(n) 2,借助STL中set或者multiset,因为它们的底层数据结构是红黑树实现的,插入数据时间复杂度为O( ...

  4. PHPWord生成word实现table合并(colspan和rowspan)

    PHPWord(http://phpword.codeplex.com/)是一个很好处理和生成WORD文档的工具,但是生成复杂的word,如colspan和rowspan的实现,还是需要你做些修改. ...

  5. 黄聪:查看mysql数据库真正的data目录

    终于找到了mysql数据库data目录在哪里! 用show variables like 'datadir',可查看真正的data目录 原文:http://blog.csdn.net/dmz1981/ ...

  6. MarkDowdPad 破解

    一部小心把markdown破解了,把破解后的主程序发出来吧,放到安装根目录即可.点击升级到专业,随意输入邮箱和8位注册码,确定后会显示失败,返回即可,然后你就会发现已经变成专业版了. 不知道博客园怎么 ...

  7. 想当然是编程最大的坑,记更新删除过期cookie无效有感

    一般来说只要设置了cookie的过期时间,就可以实现删除cookie的作用. 可是我尝试了设置过期时间,清除cookie内容都无效. 最后才发现,我根本没有执行到那段设置过期的代码. 刚开始是因为登出 ...

  8. [CSS]当选择器没有指定元素时

    当选择器没有指定元素时,样式会作用于(匹配)所有html元素. 如下面代码: <!DOCTYPE html> <html> <head> <style> ...

  9. Zookeeper + Hadoop2.6 集群HA + spark1.6完整搭建与所有参数解析

    废话就不多说了,直接开始啦~ 安装环境变量: 使用linx下的解压软件,解压找到里面的install 或者 ls 运行这个进行安装 yum install gcc yum install gcc-c+ ...

  10. IGS_学习笔记06_IREP发布客户化集成接口为Web Service(案例)

    2015-01-03 Created By BaoXinjian