2009-07-13 5 views
2

개인 유효성 검사기를 사용하여 자체 유효성 검사를 처리하는 사용자 지정 textInput 구성 요소를 만들었습니다. 유효성 검사는 구성 요소의 상태에 따라 활성화됩니다. 즉 구성 요소 상태가 "편집"일 때 유효성 검사가 활성화됩니다.유효성 검사가 활성화되지 않은 경우 textInput에 대한 유효성 검사 취소

그러나 상태가 편집 상태에서 변경되면 내부 유효성 검사기는 사용하지 않도록 설정되어 있지만 텍스트 상자의 유효성 검사 오류는 지워지지 않습니다. textInput에는 여전히 빨간색 테두리가 있고 마우스 오버시 유효성 검사 오류가 발생합니다. 내가 원하는 것은 유효성 검사기를 사용할 수 없으면 오류 형식과 오류 메시지가 텍스트 입력 컨트롤에서 제거된다는 것입니다.

누구든지 어떻게해야합니까? 나는 내부 유효성 검사기 인스턴스를 enabled = false로 설정하고 아래에서와 같이 새로운 focusOutEvent를 보내려고했지만 유효성 검사 오류 서식이 textInput contrl에 여전히 적용되어 있습니다.

    _validatorInstance.enabled = false; 
       //clear the validation errors if any 
       dispatchEvent(new FocusEvent(FocusEvent.FOCUS_OUT)); 

아이디어가 있으십니까?

감사

지금까지 내가 사라해야 오류 필드와 오류 형식에서 Errorstring이를 지울 수 있습니다 알고
+1

이 대답이 아니라 주석, 만약 myField.errorString = ""; 유효성 검사기를 사용할 때 오류를 제거하는 가장 좋은 방법은 유효성 검사기를 사용하지 않고 조건을 직접 확인하고 오류 문자열을 직접 설정하고 직접 해결할 수 있습니다. 오류 문자열을 수동으로 지우는 것보다 더 좋은 방법 일 것입니다. 더 많은 코드를 작성하고 각 컨트롤을 지정하여 오류 문자열을 지워야하는 경우 유효성 검사기를 사용하면 어떤 이점이 있습니까? –

답변

7

:

myField.errorString = ""; 
0

는 그냥 Errorstring이 설정 있습니다 to blank는 유효하거나 유효하지 않은 이벤트를 전달하지 않습니다.

3

오류 필드에서 errorString을 지우는 데 사용되는 errorString 사용과 관련된 문제를 발견했습니다. errorString이 클리어되면 (프로그래밍 방식으로), 유효성 검사기에 바인딩 된 구성 요소는 이후 유효성 검사에서 errortip을 표시하지 않습니다.

하는의 ValidationResultEvent와 Errorstring이의 사용을 교체하십시오,이 같은 프로그램이 화재 :

var evt:ValidationResultEvent = new ValidationResultEvent(ValidationResultEvent.VALID); 
validatorInstance.dispatchEvent(evt); 

이 문제는이 이후 4.5 SDK가 수정되었습니다로 4.0 SDK를 사용하여 컴파일 된 코드에 대한 유행이다.

그것은 JIRA에보고 된 버그의 : http://bugs.adobe.com/jira/browse/SDK-29270