解决Ext.form.ComboBox提交始终获得displayField的值
Ext.form.ComboBox提交始终获得displayField的值,以前没遇到过,直到我做了一个ComboBox组合Tree时,才出现这个问题,不管我怎么设置,以及修改代码,就是一直提交的是显示的内容,而不是隐藏的那个值.
后来,在使用普通的ComboBox时,也出现这个问题,于是认真了一把,终于找到了问题的解决方法,只要在ComboBox对象里设置hiddenName属性(我把hiddenName值设成name一样的值)就可以了,嘿嘿,真是很变态.
示例代码:
var combo = new Ext.form.ComboBox({ //name:"test", //据说可以不用这属性 hiddenName:"test", fieldLabel: "测试", store: new Ext.data.SimpleStore({ // 填充的数据 fields : [ 'value', 'text'], data : [[1, '正常'], [0, '禁用']] }), valueField:"value", displayField:"text", readOnly:true, mode: "local", triggerAction:"all", emptyText:"请选择类型...", allowBlank:false, editable :true});
??
?
估计大部分人和我一样提交表单后,后台始终得不到ComboBox的值,原来hiddenName才是真是的提交表单名称,开始一直以为是name。怎么网络上那么多不负责任的人说是name呢?害我弄了很久,行库看到http://jokul-sycs.spaces.live.com/blog/cns!FBACFBA11EA0344A!122.entry的提示。谢谢啊。
var combo = new Ext.form.ComboBox({
????????? //name:"fkid",
?????????? hiddenName:"fkid",
?????????? fieldLabel: "文件分类",
?????????? store:data,
?????????? valueField:"fkid",
?????????? displayField:"mtext",
???? readOnly:true,
?????????? mode: "local",
?????????? triggerAction:"all",
?????????? emptyText:"请选择类型...",
?????????? allowBlank:false,
?????????? editable :true
?????? });
再次高喊:ext你强大了!
?
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/jzdzhiyun/archive/2008/10/04/3016147.aspx
?
?
?
http://topic.csdn.net/u/20090324/16/aa352d60-aa19-4458-8711-81bba7cc8d12.html
1 楼 pizza823 2010-07-12 thanks a lot 2 楼 lzy83925 2010-08-27 我也遇到一样的问题 NND