实现ComboBox下拉框数据联动

根据选择"状态模块"数据决定"费用状态"中的数据

            var dataStatus = [
                ['关税增值税', '关税增值税'],
                ['进出口票状态', '进出口票状态'],
                ['进出口杂费', '进出口杂费'],
                ['进出口杂费结算', '进出口杂费结算'],
                ['进出口代理费', '进出口代理费'],
                ['进出口代理费结算', '进出口代理费结算'],
                ['运输费票状态', '运输费票状态'],
                ['运输费', '运输费'],
                ['运输费结算', '运输费结算'],
                ['仓储杂费票状态', '仓储杂费票状态'],
                ['仓储杂费', '仓储杂费'],
                ['仓储杂费结算', '仓储杂费结算'],
                ['立体仓储费', '立体仓储费'],
                ['立体仓储费结算', '立体仓储费结算'],
                ['平面仓储费', '平面仓储费'],
                ['平面仓储费结算', '平面仓储费结算'],
                ['独立结算单', '独立结算单']
            ];
 
            var Nodestore = new Ext.data.ArrayStore({
               data: dataStatus,
               fields: [
               { name: 'CODE' }, { name: 'VALUE' }
               ]
           });
           
     var StatusNode = new Ext.form.ComboBox({
        fieldLabel: '状态模块',
        mode: 'local',
        anchor: '50%',
        store: Nodestore,
        valueField: 'CODE',
        displayField: 'VALUE',
        editable: false,
        triggerAction: 'all',
        forceSelection: true
    });
    



    var storeFee = new Ext.data.SimpleStore({
        fields: ['CODE', 'VALUE']
    });          
    var FeeStatus = new Ext.form.ComboBox({
        fieldLabel: '费用状态',
        mode: 'local',
        anchor: '50%',
        valueField: 'CODE',
        displayField: 'VALUE',
        store: storeFee,
        editable: false,
        triggerAction: 'all',
        forceSelection: true
    });

 

第一步,建立"费用状态"数据源

            var dataTax = [
                ['未登录', '未登录'],
                ['草稿', '草稿'],
                ['提交', '提交'],
                ['审核通过', '审核通过'],
                ['确认通过', '确认通过']
            ];    
            var dataIEBillno = [
                ['未登录', '未登录'],
                ['草稿', '草稿'],
                ['提交', '提交'],
                ['附属信息提交', '附属信息提交'],
                ['附属信息审核通过', '附属信息审核通过'],
                ['附属信息草稿', '附属信息草稿']
            ];    

第二部,添加"状态模块"的'select'事件

    StatusNode.on('select', function(StatusNode) {
    
       var selectvalue = StatusNode.getValue();
        switch(selectvalue)
        {
           case "关税增值税":
               FeeStatus.clearValue();
               storeFee.loadData(dataTax);
           break;
           case"进出口票状态":
               FeeStatus.clearValue();
               storeFee.loadData(dataIEBillno);
           break;                            
        }
    });
posted @ 2012-06-05 14:57  angus_csh  阅读(543)  评论(0编辑  收藏  举报