Extjs多选下拉框02

来源:互联网 发布:知乎福利大合集 编辑:程序博客网 时间:2024/05/16 01:51

直接在需要使用的页面中的组件更改即可,例子如下:

{  fieldLabel:'多选下拉框',  triggerAction:'all',  id:'multiselect',  name:'multiselect',  xtype: 'combo',  width:100,  emptyText:'请选择',  store:manStore,  mode:'local',  valueField:'value',  displayField:'value',  //editable:false,  frame:true,          typeAhead: true,           tpl:'<tpl for="."><div class="x-combo-list-item"><span><input type="checkbox" {[values.check?"checked":""]}  value="{[values.value]}" /></span><span >{value}</span></div></tpl>',             selectOnFocus:true,        //value:'',        //applyTo: 'local-states',           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('value'));                           strvalue.push(rc.get('value'));                       }                   });                   this.setValue(str.join());                   this.value=strvalue.join();                   //this.collapse();                   this.fireEvent('select', this, record, index);                              }           }}

这方法避免了前篇中提到的出现bug的问题。而且简单不用加载附件。

原创粉丝点击