2012-10-05 3 views
0

전 extjs에서 일하고 있습니다. 내 양식의 필드를 비활성화해야합니다.한 번의 클릭으로 양식의 모든 콤보 박스 사용 안 함

아래 기능을 사용했습니다.

 var form = Ext.getCmp('frmTender').getForm(); 

     fields = form.getFields(); 

     Ext.each(fields.items, function (f) { 

      f.inputEl.dom.disabled = true; 

     } 

텍스트 필드에서 작동하지만 콤보 박스 및 체크 박스에서는 작동하지 않습니다.

내가 모든 콤보 내 양식의

을 해제 할 수있는 방법 그래서 제발 도와주세요.

답변

1

Ext 구성 요소의 setDisabled 메소드를 사용할 수 있습니다.

f.inputEl.dom.disabled = true; 

http://docs.sencha.com/ext-js/4-1/#!/api/Ext.AbstractComponent-method-setDisabled

+0

감사합니다 존 ........... 작동하지만,이 내 창은 회색으로 표시됩니다. 하지만 나는 그것을 원하지 않는다, 내 창은 흰색으로 남아 있어야한다. 필드는 회색을 가져야 만한다. – nav

+1

자, 내가 사용했다. f.setReadOnly (true); 대신에 f.inputEl.dom.disabled = true; 그 일 – nav

0

대신에

f.setDisabled(true); 

나는 개인적으로 extjs라는 필드의 비활성화를 좋아하지 않는다. 레이블도 회색으로 표시됩니다. 나는 그것을이 방법으로 사용하고있다.

//JS 
var form = Ext.getCmp('frmTender').getForm(); 
fields = form.getFields(); 
Ext.each(fields.items, function (f) { 
    f.inputEl.dom.readonly = true; //f.setReadOnly(true) 
    f.inputEl.addCls('x-custom-field'); 
}; 

//CSS 
.x-custom-field 
{ 
    background: none; //#ccc 
} 
관련 문제