0

我正在尝试创建一个多项选择类,我在其中传递问题以及用户必须从中选择一个的 2 到 8 个可能的答案。如何动态地将我的项目传递给我的班级,并为每个可能的答案创建一个新的无线电场?这是我目前的课程,有两个可能的答案(红色,白色)

    Ext.define('Sencha.view.question.QuestionTypeOne', {
    扩展:'Ext.Container',
    xtype: '问题类型一',
    要求:[
        'Ext.TitleBar'
        ],
    配置:{
        高度:'250px',
        宽度:'250px',
        项目: [
            {

                xtype:'字段集',
                title: '你最喜欢的颜色是什么?',
                说明:'选择一个',

                默认值:{
                    xtype: '无线电场',
                    标签宽度:'40%'
                },
                项目: [
                    {
                        名称:'颜色',
                        值:'红色',
                        标签: '红色'
                    },
                    {
                        名称:'颜色',
                        值:'白色',
                        标签: '白色'
                    }

                ]

            }
        ]
    },

    初始化:函数(){
        this.callParent(参数);
    }
    });

它会被这样调用吗?

      {
         xtype: '问题类型一',
         // 问题:“你最喜欢的颜色是什么?”,
         // 项目: []
      }
4

1 回答 1

1

在为您创建视图时,question-type-one您可以传递问题/答案列表,并且在initialize功能中您可以迭代此数据并将项目添加到您的字段集中。为此,您可能必须在视图类中保留 null config q & a。

var question = Ext.create("Sencha.view.question.QuestionTypeOne", {
  q : "blah blah blah",
  a : {"a1", "a2", "a3"}
});

然后在初始化函数中

initialize: function () {
    this.callParent(arguments);
    var question = this.config.q;
    var answers = this.config.a;
    var container = this.down('fieldset');
    // now iterate over answers and all container.add(answerdfield);
}
于 2013-06-24T06:22:32.130 回答