问题描述
- extjs4 combobox默认选中第一个(急)
-
网上方法都试了一遍,没一个管用的···
我前台采用的是mvc架构的代码,但是无论是给combo指定value,或者给store添加监听load事件,还是给combo添加监听afterRender事件,结果页面上的combobox显示的都是value值,而不是相应的显示值;
另外,我的store是采用remote数据源;
快疯了···哪个大神指教一下!
贴代码:
//store
Ext.define("MB.store.ChannelStore", {
extend: "Ext.data.Store",
model: "MB.model.ComboModel",
autoLoad : true,
proxy: {
type: 'ajax',
actionMethods: {
read: 'POST'
},
url: basePath + 'custom/common/loadOrderShopData?dataType=1',
reader: {
type:'json'
}
}/*,
listeners :{
load:function(){
Ext.getCmp('abnormalSKUMaintainPanlViewChannelCombo').setValue('JD_CHANNEL_CODE');
Ext.getCmp('abnormalSKUMaintainPanlViewChannelCombo').setRawValue('京东平台');
}
}*/
});
//combo
Ext.define("MB.view.abnormalSKUMaintain.ChannelCombo", {
extend : "Ext.form.field.ComboBox",
alias : 'widget.channelCombo',
store : 'MB.store.ChannelStore',
name : 'channelType',
hiddenName : 'channelType',
id : 'abnormalSKUMaintainPanlViewChannelCombo',
displayField : 'shortText',
valueField : 'channelCode',
// value : 'JD_CHANNEL_CODE',
queryMode : 'remote',
fieldLabel : '渠道类型',
editable : false,
/*listeners : {
afterRender : function(combo) {
combo.setValue('JD_CHANNEL_CODE');//同时下拉框会将与name为firstValue值对应的 text显示
combo.setRawValue('京东平台');
}
},*/
initComponent : function() {
this.callParent(arguments);
}
});
怎么都看不出来哪里有问题···
解决方案
直接浏览器访问url: basePath + 'custom/common/loadOrderShopData?dataType=1',看输出什么内容,在一步一步找问题
解决方案二:
我刚也遇到这个问题,查看了一下EXT的源码,还是比较容易解决的,你解决了吗?
时间: 2024-09-13 20:59:36