Extjs下拉多選框


var stateCombo = new Ext.form.ComboBox({   
        store : new Ext.data.SimpleStore({
fields : ["value", "text"],
data : [['0','有效'],['1','無效']]
}),   
        displayField:'text',   //store也可以動態的去加載,大家自己改一下就OK
        valueField:'value', 
        mode : 'local',
        id : 'stateList',
        typeAhead: true,  
        width : 150,
        fieldLabel : '狀態',
        mode: 'local',   
        tpl:'<tpl for="."><div class="x-combo-list-item"><span><input type="checkbox" {[values.check?"checked":""]} value="{[values.text]}" /></span><span >{text}</span></div></tpl>',   
        triggerAction: 'all',   
        emptyText:'請選擇',   
        selectOnFocus:true,   
        onSelect : function(record, index){   
            if(this.fireEvent('beforeselect', this, record, index) != false){   
                record.set('check',!record.get('check'));   
               var str=[];//頁面顯示的值   
                var strvalue=[];//傳入后台的值   
                this.store.each(function(rc){ 
                    if(rc.get('check')){   
                        str.push(rc.get('text'));   
                        strvalue.push(rc.get('value'));   
                    }   
                });   
               this.setValue(str.join());   
                this.value=strvalue.join();//賦值
                this.fireEvent('select', this, record, index);   
            }
        },
        listeners:{
        expand : function(value){//監聽下拉事件
        this.store.each(function(rc){
        if(value.value==rc.get('value')){
        rc.set('check',true);//選中
        }
                });
        }
        }
    });


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM