combobox级联

//父combobox

var comboxp = new Ext.form.ComboBox({
                    store: pStore,
                    displayField:'label',
                    valueField: 'label',
                    typeAhead: true,
                    mode: 'local',
                    forceSelection: true,
                    triggerAction: 'all',
                    lazyRender:true,
                    emptyText:'父',
                    selectOnFocus:true,
                    listeners : {
                        beforequery : function() {
                            pStore.removeAll();
                            DWREngine.setAsync(false);
                            var lt=null;

                           //获取数据:dwr方法获取
                            Action.getPBox(function(data){
                                lt= data;
                            });
                            if(lt!= null) {
                                var records = new Array();
                                for(var i = 0 ; i < lt.length; i++) {
                                    var ss = lt[i];
                                    var record = new Ext.data.Record({
                                        value : ss.key,
                                        label : ss.value
                                    });
                                    records.push(record);
                                }
                                pStore.add(records);
                            }
                            DWREngine.setAsync(true);
                        },
                        select : function(combo, record, index) {
                            DWREngine.setAsync(false);
                             var codeId = combo.getValue();
                             var lt=null;

                             //修改子combobox的值
                             Action.getCBox(codeId,function(data){
                                   lt= data;
                            });
                            comboxc.clearValue();
                            comboxc.getStore().removeAll();
                            if(lt!= null) {
                                var records = new Array();
                                for(var i = 0 ; i < lt.length; i++) {
                                    var ss = lt[i];
                                    var record = new Ext.data.Record({
                                        value : ss.key,
                                        label : ss.value
                                    });
                                    records.push(record);
                                }
                                comboxc.getStore().add(records);
                            }
                            DWREngine.setAsync(true);
                        }}
         });

        //子combobox
        var comboxc = new Ext.form.ComboBox({
                    store: cStore,
                    displayField:'label',
                    valueField: 'label',
                    typeAhead: true,
                    mode: 'local',
                    forceSelection: true,
                    triggerAction: 'all',
                    lazyRender:true,
                    emptyText:'子',
                    selectOnFocus:true

        });

你可能感兴趣的:(ext,DWR)