EXTJS combo提交值的问题

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 17:25   3434   0

EXTJS2.2的版本Combo如果通过form.getForm().getValues()获取不了显示值的问题

只需重写onrender方法 注释掉一行代码即可

Ext.override(Ext.form.ComboBox,{
onRender : function(ct, position){
Ext.form.ComboBox.superclass.onRender.call(this, ct, position);
if(this.hiddenName){
this.hiddenField = this.el.insertSibling({tag:'input', type:'hidden', name: this.hiddenName,
id: (this.hiddenId||this.hiddenName)}, 'before', true);

// prevent input submission
//this.el.dom.removeAttribute('name'); 此行getValues()当name为空时,被省略了。
}
if(Ext.isGecko){
this.el.dom.setAttribute('autocomplete', 'off');
}

if(!this.lazyInit){
this.initList();
}else{
this.on('focus', this.initList, this, {single: true});
}

if(!this.editable){
this.editable = true;
this.setEditable(false);
}
}
})

Extjs3.3 有个submitValue 只需把它设置为true.通过form.getForm().getValues()都能取得。

var store = new Ext.data.SimpleStore({
fields: ['abbr', 'state', 'nick'],
data : Ext.exampledata.states // from states.js
});
var combo = new Ext.form.ComboBox({
store: store,
displayField:'state',
valueField:'abbr',
hiddenName:'state1',
typeAhead: true,
submitValue:true,
mode: 'local',
name:'state',
forceSelection: true,
triggerAction: 'all',
emptyText:'Select a state...',
selectOnFocus:true
});

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP