今天遇到了这个问题,觉得很奇怪。在网上查找了很长时间基本上都是一样的文章转来转去,但是经过测试还是不能用,至少在Extjs4以后不好用。

抱着试试的心态在google里英文一下标题,总算找到了可以用的解决方案

{
                xtype: 'radiogroup',
                fieldLabel: '场地停车',
                name: 'parking',//这里需要填写和radiofield一样的名字
                items: [
                    {
                        xtype: 'radiofield',
                        width: 60,
                        boxLabel: '提供',
                        inputValue: true,//这里的值要和json中的值类型一致
                        checked: true,
                        name: 'parking'
                    },
                    {
                        xtype: 'radiofield',
                        boxLabel: '不提供',
                        inputValue: false,
                        name: 'parking'
                    }
                ],
            //这里是额外添加的 setValue:
function (value) { if (!Ext.isObject(value)) { var obj = new Object(); obj[this.name] = value; value = obj; } Ext.form.RadioGroup.prototype.setValue.call(this, value); } }

上述代码已经过测试正常可用。只保证Extjs4.0以上有效果。

附上原文地址

http://stackoverflow.com/questions/9942493/how-to-set-radiogroup-radiofield-based-on-the-json-data-extjs-4?rq=1

http://www.sencha.com/forum/showthread.php?187185-Set-a-int-value-on-a-radiogroup-fails&p=759988#post759988

posted on 2013-01-19 11:12  xdlysk  阅读(412)  评论(0编辑  收藏  举报