1

我有一个简单的问题,尽管它让我很头疼。

我有一个字段容器,其中添加了一些无线电字段:

xtype      : 'fieldcontainer',
                            fieldLabel : 'Field type',
                            defaultType: 'radiofield',
                            defaults: {
                                flex: 1
                            },
                            items: [
                                {
                                    boxLabel  : 'Plain Text',
                                    name      : 'plain-text',
                                    inputValue: 'plain-text',
                                    id        : 'plain-text'
                                }, {
                                    boxLabel  : 'Rich Text',
                                    name      : 'html-text',
                                    inputValue: 'html-text',
                                    id        : 'html-text'
                                }, {
                                    boxLabel  : 'Time',
                                    name      : 'time',
                                    inputValue: 'time',
                                    id        : 'time'
                                },
                                {
                                    boxLabel  : 'Typed reference',
                                    name      : 'typed-reference',
                                    inputValue: 'typed-reference',
                                    id        : 'typed-reference'
                                },
                                {
                                    boxLabel  : 'Date',
                                    name      : 'date',
                                    inputValue: 'date',
                                    id        : 'date'
                                }

                            ],

                            listeners: {
                                added: function(radiofield) {
                                    ??

                                }

我尝试了几乎所有检查 radiofield 对象的方法,比如迭代它的 items.items 数组以添加项目,但是,我只得到项目的整数值,而不是对象本身。我想迭代添加到容器中的所有项目,以在满足特定条件的单选字段上设置选中值。

4

3 回答 3

0

你有什么理由不使用 RadionGroup 吗?反正; 项目属于 Ext.util.MixedColletion 类型,它为您提供了每个方法http://docs.sencha.com/ext-js/4-1/#!/api/Ext.util.AbstractMixedCollection-method-each

尝试以下

// define a function within the scope of the fieldcontainer(instance)
handlerFunction: functio(item) {
    // item is the instance of your radiofield
    // you can access any property or call any method
    if (item.name === 'html-text') {
         item.setValue('html-text');
    }
}

fieldcontainerInstance.items.each(handlerFunction,handlerFunctionScope);
于 2013-01-25T09:27:59.290 回答
0

利用query([selector])

检索与传递的选择器匹配的所有后代组件。使用此容器作为其根执行 Ext.ComponentQuery.query。

于 2013-01-23T17:10:37.907 回答
0

只需键入 item.query() 即可获取它拥有的所有项目。

于 2014-12-30T09:51:01.547 回答