extjs获取多选框_Extjs下拉多选框

这段代码展示了如何在ExtJS中创建一个下拉多选框组件。通过定义数据记录、数据读取器、数据代理和数据存储,实现了从服务器获取数据并加载到下拉框。组件支持本地模式、自动完成、选中状态显示以及选中项的值处理。监听'expand'事件用于在下拉框展开时设置已选中的选项。
摘要由CSDN通过智能技术生成

//------录入时间,下拉列表框------

var inputTimeRow = newExt.data.Record.create([

{

name :'value'},{

name :'text'}

]);var inputTimeReader = newExt.data.JsonReader({

fields : inputTimeRow

});var inputTimeProxy = newExt.data.HttpProxy({

url : actionUrl

});var inputTimeStore = new Ext.data.JsonStore({//配置项数据源

baseParams:{action:'getInputTime'},

pruneModifiedRecords :true,

proxy : inputTimeProxy,

reader : inputTimeReader,

fields : inputTimeRow

});

inputTimeStore.load();var inputTimeComboBox = newExt.form.ComboBox({//value : '数据',

store : inputTimeStore,

triggerAction :'all',

lazyRender :true,

typeAhead :true,//允许自动选择匹配的剩余部分文本

displayField : 'text',

valueField :'value',

selectOnFocus :true,

mode :'local',

readOnly:false,

editable:false,

emptyText :'选择时间',

fieldLabel:'录入时间',

id:'InputTime',

name:'InputTime',

tpl:'

{text}
',

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);//选中

}

})

}

},

width:105});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值