2013-06-21 47 views
0

我正在嘗試創建一個多選題類,我在該問題中傳遞以及從2到8個用戶必須選擇的可能答案。我如何動態地將我的項目傳遞給我的班級,併爲每個可能的答案創建一個新的radiofield?這是我目前有兩個可能的答案(紅色,白色)動態無線電字段數

 

    Ext.define('Sencha.view.question.QuestionTypeOne', { 
    extend: 'Ext.Container', 
    xtype: 'question-type-one', 
    requires: [ 
     'Ext.TitleBar' 
     ], 
    config: { 
     height: '250px', 
     width: '250px', 
     items: [ 
      { 

       xtype: 'fieldset', 
       title: 'What\'s your favorite color?', 
       instructions: 'Select one', 

       defaults: { 
        xtype: 'radiofield', 
        labelWidth: '40%' 
       }, 
       items: [ 
        { 
         name: 'color', 
         value: 'red', 
         label: 'Red' 
        }, 
        { 
         name: 'color', 
         value: 'white', 
         label: 'White' 
        } 

       ] 

      } 
     ] 
    }, 

    initialize: function() { 
     this.callParent(arguments); 
    } 
    }); 

它會被調用這樣的東西?

 
     { 
     xtype: 'question-type-one', 
     // question: "What's your favorite color?", 
     // items: [] 
     } 

回答

1

question-type-one創建視圖中,可以通過提問/回答的列表,並在initialize功能,您可以遍歷這個數據和您字段集添加項目。爲此,您可能必須在視圖類中保留空配置文件q &。

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); 
}