2012-05-23 9 views
3

Я создаю группу radioGroup в extJS 4, используя xtype внутри FormPanel. Я пытаюсь включить/отключить текстовое поле, как только будет проверено радио.Экстренное событие проверки группы радиостанций JS 4

{ 
xtype: 'radiogroup', 
fieldLabel: 'Enable/Disable ', 
columns: 2, 
vertical: true, 
items: [ 
    {boxLabel: 'Enable', name: 'formtype', inputValue: '1'}, 
    {boxLabel: 'Disable', name: 'formtype', inputValue:'2',checked:true}, 
    ] 
} 

Я смущен, где можно добавить слушателей для проверки/щелчка. Спасибо за тонну заранее.

+0

Я попытался добавить этот путь, но почему он показывает предупреждение() 2 раза? – aswininayak

+1

слушателей: { \t "change": function (field, newValue, oldValue, eOpts) { \t \t alert (this.items); } \t \t \t \t \t} – aswininayak

ответ

11

Вы должны обрабатывать событие «change» на каждом переключателе. Когда радиокнопка изменяется (выбрана), включите/отключите текстовое поле.

После примера:

Ext.create ('Ext.container.Container', { 
    renderTo: Ext.getBody() , 
    items: [{ 
     xtype: 'textfield' , 
     id: 'tf' , 
     disabled: true , 
     fieldLabel: 'My Text' 
    } , { 
     xtype: 'radiogroup', 
     fieldLabel: 'Enable/Disable ', 
     columns: 2, 
     vertical: true, 
     items: [{ 
      boxLabel: 'Enable', 
      name: 'formtype' , 
      inputValue: '1' , 
      listeners: { 
       change: function (cb, nv, ov) { 
        if (nv) Ext.getCmp('tf').enable(); 
       } 
      } 
     } , { 
      boxLabel: 'Disable', 
      name: 'formtype', 
      inputValue:'2', 
      checked: true , 
      listeners: { 
       change: function (cb, nv, ov) { 
        if (nv) Ext.getCmp('tf').disable(); 
       } 
      } 
     }] 
    }] 
}); 

Ciao

+1

Спасибо Wilk, что сработало .... – aswininayak

2

Если вы установите событие изменения слушателем на самой радиостанции группы (не на каждой кнопке), вы только должны обрабатывать одно событие. Ваш слушатель/обработчик будет вызван и принят newVal и oldVal. Затем вы можете взять newVal в качестве значения, которое было выбрано.

 Смежные вопросы

  • Нет связанных вопросов^_^