2015-09-28 188 views
1

我試圖顯示和隱藏radiogroups,基於從滴播選擇的選擇。所以,如果我選擇東芝只有東芝車型出現,否則,如果我選擇惠普只有馬力車型出現。現在功能正在起作用,然而在選擇任何東西之前,兩種型號(hp和toshiba)都顯示出來,但是我希望它只有東芝型號在開始時才顯示。我試圖給出hp模型,隱藏屬性:true ..但是當選擇hp時,模型不再出現。關於如何在開始時只顯示一個模型的任何想法?在extjs中顯示隱藏元素

toshibatypes = Ext.create('Ext.form.Panel', { 
     xtype: 'radiogroup', 
     defaultType: 'radio', 
     layout: 'hbox', 
     border:false, 
     id: 'toshiba', 
     width:'100%', 

     items: [ 
     { 
      checked: true, 
      boxLabel: 'Toshiba 1', 
      name: 'toshibas', 
      inputValue: 'toshiba1', 
      xtype:'radiofield' 
     }, 
     { 
      boxLabel: 'Toshiba 2', 
      name: 'toshibas', 
      inputValue: 'toshiba2', 
      xtype:'radiofield' 
     } 
    ] 
}); 



hptypes = Ext.create('Ext.form.Panel', { 
     xtype: 'radiogroup', 
       defaultType: 'radio', 
      layout: 'hbox', 
     border:false, 
     id: 'hp', 
     width:'100%', 

     items: [ 
     { 
      checked: true, 
      boxLabel: 'HP 1', 
      name: 'hps', 
      inputValue: 'hp1', 
      xtype:'radiofield' 
     }, 

     { 
      boxLabel: 'HP 2', 
      name: 'hps', 
      inputValue: 'hp2', 
      xtype:'radiofield' 
     }] 
}); 



    laptoptypes = Ext.create('Ext.form.ComboBox', { 
     store: laptops, 
     queryMode: 'local', 
     displayField: 'name', 
     valueField: 'abbr', 
     editable:false, 
     width: 100, 
     listeners: { 
     select: function() { 
     var iComboValue = laptoptypes.getValue(); 
      switch(iComboValue) { 
      case "toshibatypes" : 
      { 
       Ext.get("toshiba").show(); 
       Ext.get("hp").hide(); 

       break; 
      } 
      case "hptypes" : 
      { 
       Ext.get("hp").hide(); 
       Ext.get("toshiba").show(); 

       break; 
      } 

     } 
     } 
     } 
    }); 
+0

請同時添加一個標籤以及您正在使用的相應版本:) – Tarabass

回答

2

如果在視圖聲明中隱藏配置,則可以使用setHidden(boolean)

var iComboValue = laptoptypes.getValue(); 

Ext.get("toshiba").setHidden(iComboValue !== 'toshibatypes'); 
Ext.get("hp").setHidden(iComboValue !== 'hptypes');