컴포넌트 속성 중 allowBlank는 기본적으론 bind 시켜서 변경 할 수 없습니다.

 

따라서 별도로 해당 컴포넌트를 조작해보았습니다.

 

 

dynamicAllowBlank: function(allowBlankArr, isAllowBlank){

		for(var i = 0; i < allowBlankArr.length; i++){
			if( allowBlankArr[i] ) {
				allowBlankArr[i].allowBlank = isAllowBlank;

				var newFieldLabel = isAllowBlank? allowBlankArr[i].getFieldLabel().replace('<span style="color:red">*</span>', '')
						: allowBlankArr[i].getFieldLabel() + '<span style="color:red">*</span>';
				allowBlankArr[i].setFieldLabel(newFieldLabel);

				if(isAllowBlank){
					allowBlankArr[i].clearInvalid();
				}else{
					allowBlankArr[i].validateValue(allowBlankArr[i].getValue());
				}

			}
		}
	},

 

첫 매개변수는 변경할 컴포넌트들이 담긴 배열,

두번째 변수는 변경을 위한 boolean 값입니다.

 

 1. allowBlank 속성 변경
 2. FieldLabel 변경 : 라벨 오른쪽에 붉은 별 표시
 3. clearInvalid / validateValue 변경 : 입력위치의 붉은 선

'extJS' 카테고리의 다른 글

[extJS] 입력값 제어  (0) 2023.01.06

+ Recent posts