ExtJS中给ComboBox设定初始值的有关问题

ExtJS中给ComboBox设定初始值的有关问题

ExtJS中给ComboBox设定初始值的问题

我做了几个ComboBox联动,需要第一次显示时设定初始值,这个通过value可以指定,但是通过value指定时它显示的也是 

value的值,不能做到向后台传递的和前台显示的两个值不同,请高手指教。谢谢!!!

前面有的高手给予指点,但是没抓住指点,我在详细说一下:

  通过displayfield和valuefield是可以实现提交的值和显示的值不同,我问的关键是在打开页面有ComboBox有初始选定值

怎么实现,若我给它value赋个初值“教授”,前端显示的是”教授“那么提交的就是“教授”,而我想提交“教授”的 

ID ,若直接给value赋ID值,那么前台显示的就是ID值,所以不知道怎么实现。



帮顶




1. 有初始值的情况:

主要是配置store的autoLoad : true以及在load以后通过setValue设置value值,这样只要有匹配的value值存在,对应的text值就会显示。

2. 提交value,而非text:

不要用name属性,用hiddenName属性就可以了,这样提交的就是你的value值(也就是你说的教授ID)

代码如下:

var comboA = {

id: Ext.id(),

fieldLabel : “province”,

hiddenName: “china.province”,

xtype : “combo”

labelWidth : 150,

anchor : “95%”,

columnWidth : “33%”,

emptyText : “xxx”,

editable : false,

allowBlank: false,

store : new Ext.data.Store({

proxy : new Ext.data.HttpProxy({

url : “cascadingComboTest.biz”

}),

reader : new Ext.data.JsonReader({

root : “comboMix”

}, [“text”, “value”]),

remoteSort : false,

baseParams: {region: 1, scopeId: 1},

autoLoad : true,

listeners:{

load: function(){

Ext.getCmp(comboA.id).setValue(2);

}

}

}),

triggerAction : “all”,

displayField : “text”,

valueField : “value”

}

 



herrscher.qiang

ExtJS中给ComboBox设定初始值的有关问题

相关文章:

你感兴趣的文章:

标签云: