2012-05-31 2 views
0

안녕하세요! 이 코드는 완벽하게 작동하는 텍스트 필드에단추를 클릭 할 때 Extjs readOnly 옵션 설정

Ext.override(Ext.form.Panel,{ 

    setReadOnly: function(bReadOnly) { 

    this.items.each(function(f){ 

    if (f instanceof Ext.form.FieldSet) { 
     f.items.each(function (f) { 

     if (f.isFormField) { 
      if (bReadOnly === true) { 
      f.inputEl.dom.setAttribute('readonly', true); 
      } else { 
      f.inputEl.dom.removeAttribute('readonly'); 
      }    

      if (f instanceof Ext.form.TriggerField) 
      {     
      f.setDisabled(bReadOnly);     

      if (f instanceof Ext.form.ComboBox) 
      { 
       f.setEditable(bReadOnly); 
      } 
      } 
     } 
    }); 
    } 
    }); 
}); 

: 나는 이 버튼을 클릭하면 양식의 요소 (true 또는 false) readOnly 인 옵션을 설정하는 방법을 작성하려고합니다. 하지만 TriggerField에서 트리거를 표시 할 수 없습니다. false로 설정하면 readOnly 옵션을 설정할 수 있습니다. 아무도 도와 줄 수 없나요?

답변

1

당신은 아마

여기 API 참조 참조 TriggerField setReadOnly를 방법 원하는 : 수동으로 DOM을 변경해야 shoudln't http://docs.sencha.com/ext-js/3-4/#!/api/Ext.form.TriggerField-method-setReadOnly

에게, 필요한 일을 할 수는 ExtJS의 방법이 있습니다.

또한 findByType 메서드를 사용하여 패널 내부의 모든 양식 필드를 가져올 수 있습니다.

http://docs.sencha.com/ext-js/3-4/#!/api/Ext.form.FormPanel-method-findByType

+0

매우 감사합니다! 나는 어떤 이유로이 방법을 찾을 수 없었다! – vedmed

관련 문제