//从webservice中取数据ajax
            Ext.Ajax.request({
                url: 'WebService.asmx/GetComboxFirst',
                method: 'POST',
                //jsonData: { UserName: "" },
                headers: { 'Content-Type': 'application/json;utf-8' },
                success: General,
                failure: On_Error
            });

function General(result) {
                var data = Ext.util.JSON.decode(result.responseText);
                var ds = new Ext.data.Store({
                    proxy: new Ext.data.MemoryProxy(data.d),
                    reader: new Ext.data.JsonReader({ fields: [{ name: 'strText', type: 'string' }, { name: 'strValue', type: 'string'}] })
                });

ds.load();
                var combox1 = new Ext.form.ComboBox({
                    store: ds,
                    displayField: 'strText',
                    valueField: 'strValue',
                    typeAhead: true,
                    mode: 'local',
                    forceSelection: true,
                    triggerAction: 'all',
                    emptyText: 'Select a state...',
                    selectOnFocus: true,
                    applyTo: 'combox1'
                });
                Genercombox2("1", 5);
                combox1.on('select', function (comboBox) {
                    //alert(comboBox.getRawValue() + '-' + comboBox.getValue());
                    Genercombox2("2", comboBox.getValue());
                });
            };

function On_Error() {
            };
            //从webservice中取数据ajax

//从webserivce中取通过HttpProxy,因为asp.net数据是放在.d里面的,所以需要重写JsonReader来取数据.

bJsonReader = Ext.extend(Ext.data.JsonReader, {
                read: function (response) {
                    var json = response.responseText;
                    //alert(json);
                    var o = Ext.decode(json);
                    //alert(o.d);
                    this.responseText = json;
                    if (!o) {
                        throw { message: 'JsonReader.read: Json object not found' };
                    }
                    return this.readRecords(o.d);
                }
            });
            var dshttpProxy = new Ext.data.Store({
                proxy: new Ext.data.HttpProxy({
                    url: "WebService.asmx/GetComboxFirstByParam", method: 'POST', jsonData: { strParam: 10 }
                }),
                reader: new bJsonReader({
                    fields: [{ name: 'strText', type: 'string' }, { name: 'strValue', type: 'string'}]
                })
            });

function Genercombox2(strtype, indexvalue) {

if (strtype == "1") {
                    var combox2 = new Ext.form.ComboBox({
                        store: dshttpProxy,
                        displayField: 'strText',
                        autoLoad: false,
                        valueField: 'strValue',
                        typeAhead: true,
                        mode: 'local',
                        id: 'gameAreaID',
                        forceSelection: true,
                        triggerAction: 'all',
                        emptyText: 'Select a state...',
                        loadingText: 'Please Select',
                        anchor: '100%',
                        selectOnFocus: true,
                        applyTo: 'combox2'
                    });
                }
                if (strtype == "2") {
                    var parent = Ext.getCmp('gameAreaID');
                    parent.reset();
                    //重新获取数据
                    dshttpProxy.proxy = new Ext.data.HttpProxy({
                        url: "WebService.asmx/GetComboxFirstByParam", method: 'POST', jsonData: { strParam: indexvalue }
                    });
                    dshttpProxy.load();
                }
            }
            //从webserivce中取通过HttpProxy

ComboBox联动 (AJAX BS实现)的更多相关文章

  1. vs2013+MVC3.0+EasyUI的ComboBox联动使用(二)

     vs2013+MVC3.0+EasyUI的ComboBox联动使用(二) 简单介绍:在vs2013(.net4.0)中使用MVC3.0对于EasyUI中ComboBox的联动使用. 载入Comb ...

  2. Extjs4 Combobox 联动始终出现loading错误的解决的方法

    当反复选者combobox 联动时,下级的Combobox 会出现loading的错误表现形式,尽管Store数据已载入完也是一样. 废话少说贴代码就知道怎样处理了:(注意红色部分的关键语句) }, ...

  3. Ext 4.2以后版本 ComboBox 联动

    //combox树 ComboTree: function (upDep, empStore) { var com = Ext.create('Ext.ux.desktop.ComboTree', { ...

  4. C# Combobox联动

    接上一篇博文,对界面做一个小修改,做4个combobox,形成窗口之间的联动: 界面如下: 选择combobox里的条件,单击查询获取数据 首先连接数据库,获取到数据到第一个combobox里,代码在 ...

  5. TopJUI Combobox 联动

    这里给联动进行一个简单定义:因Combobox选择或输入的值发生改变时对自身或者其它组件产生影响称为联动.(注:editable确定是否可以手动输入) 有两种实现方法: 一.自己写对应的onChang ...

  6. 练习: 省市联动(Ajax)

    // 示例一: china.xml (位于 src 目录下) <?xml version="1.0" encoding="utf-8"?> < ...

  7. JS 省市联动 ajax

    省市联动 //省市联动     $('.locationCode').change(function () {         var val = $(this).val();         if ...

  8. Extjs之combobox联动

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

  9. jquery多级联动(ajax查数据库)

    /id 代表下级下拉框ID,cityCode代表的是父级菜单代码,所有级菜单在同一张表,后台在加载是把菜单已经加入到Map缓存中.... //id 代表下级下拉框ID,cityCode代表的是父级菜单 ...

随机推荐

  1. 在GridView中的每一页末尾添加空行

    原文发布时间为:2008-08-03 -- 来源于本人的百度文章 [由搬家工具导入] protected void GridView1_RowCreated(object sender, GridVi ...

  2. localStorage增删改查

    /** * 设置 本地缓存 */ export function setStorage(key, obj) { if (typeof obj === 'string') { localStorage. ...

  3. RRAS

    远程访问控制是Windows NT.Win200x Server提供的一种远程服务,它允许用户从远端通过拨号连接连接到一个本地的计算机网络,一旦建立了连接,就相当于处在了本地的LAN中,从而可以使用各 ...

  4. Django 中的时间处理

    操作系统为OS X 10.9.2,Django为1.6.5. 1.时区 在setting.py文件中设置了时区 TIME_ZONE = 'Asia/Shanghai' # 设置时区为UTC+8 USE ...

  5. [bzoj1018][SHOI2008]堵塞的交通traffic_线段树

    bzoj-1018 SHOI-2008 堵塞的交通traffic 参考博客:https://www.cnblogs.com/MashiroSky/p/5973686.html 题目大意:有一天,由于某 ...

  6. Callable和Runnable和FutureTask

    http://www.cnblogs.com/dolphin0520/p/3949310.html 一.Callable与Runnable 二.Future 三.FutureTask 四.使用示例 一 ...

  7. disruptor 核心链路应用场景

    核心链路一般比较复杂并且需要考虑:服务之间相互依赖性.流程能够走完.人员的变动等情况 要考虑:兜底.补偿. 常见解决方案是:1)完全解耦 2)模板模式 其他解决方案:1)有限状态机框架:spring- ...

  8. CSS 居中 可随着浏览器变大变小而居中

    关键代码: 外部DIV使用: text-align:center; 内部DIV使用: margin-left:auto;margin-right:auto 例: <div style=" ...

  9. ftrace 详解

    http://www.ibm.com/developerworks/cn/linux/l-cn-ftrace/ http://www.ibm.com/developerworks/cn/linux/l ...

  10. ASP.NET Core默认注入方式下如何注入多个实现(多种方式) - sky 胡萝卜星星 - CSDN博客

    原文:ASP.NET Core默认注入方式下如何注入多个实现(多种方式) - sky 胡萝卜星星 - CSDN博客 版权声明:本文为starfd原创文章,转载请标明出处. https://blog.c ...