This page was saved using jaction on 2006-09-04 8:34:11.
Address: http://flexdocs.kr/docs/flex2/langref/mx/validators/Validator.html
Title: mx.validators.Validator (Flex™ 2 레퍼런스 가이드)  •  Size: 71063
Packagemx.validators
Classpublic class Validator
InheritanceValidator Inheritance EventDispatcher Inheritance Object
ImplementsIMXMLObject
SubclassesCreditCardValidator , CurrencyValidator , DateValidator , EmailValidator , NumberValidator , PhoneNumberValidator , RegExpValidator , SocialSecurityValidator , StringValidator , ZipCodeValidator

Validator 클래스는 모든 Flex 검증 클래스의 기본 클래스입니다. 이 클래스에 의해, 발리 데이터 기능이 Implements되어 필요한 필드를 작성합니다. 즉, 유저가 이 필드에 값을 입력하지 않으면 검증은 실패합니다.

MXML 문장구조법expandedMXML 문장구조법의 비표시

Validator 클래스에 의해, 이 클래스의 모든 서브 클래스가 Inheritance하는 다음의 태그 속성이 정의됩니다.

 <mx:Validator enabled="true|false" listener="소스 property의 값" property="디폴트치 없음" required="true|false" requiredFieldError="This field is required. " source="디폴트치 없음" trigger="소스 property의 값" triggerEvent="valueCommit" /> 

View the examples

See also

mx.events.ValidationResultEvent
mx.validators.ValidationResult
mx.validators.RegExpValidationResult
에러 힌트의 사용 custom 발리 데이터를 사용한 데이터의 검증
예 : 단순한 발리 데이터의 작성


Public property
 property정의
 Inheritedconstructor : Object
특정의 object 인스턴스의 클래스 object 또는 constructor    함수에의 참조입니다.
Object
  enabled : Boolean
이 값을 false 로 설정하면, 발리 데이터에 의한 검증을 실시할 수 없게 됩니다.
Validator
  listener : Object
검증의 listener를 지정합니다.
Validator
  property : String
검증하는 값을 포함한 source object의 property의 이름을 지정하는 string를 나타냅니다.
Validator
 Inheritedprototype : Object
[static] 클래스 또는 함수 object의 prototype object에의 참조입니다.
Object
  required : Boolean
true 의 경우, 검증 에러의 원인이 되는 결손치 또는 거짓 가격을 지정합니다.
Validator
  requiredFieldError : String
값이 결손해, 게다가 required property가 true 의 경우에 발생하는 에러 메세지입니다.
Validator
  source : Object
검증하는 property를 포함한 object를 지정합니다.
Validator
  trigger : IEventDispatcher
발리 데이터를 방아쇠 하는 이벤트의 생성을 실시하는 컴퍼넌트를 지정합니다.
Validator
  triggerEvent : String
검증을 방아쇠 하는 이벤트를 지정합니다.
Validator
Protected property
 property정의
  actualListeners : Array
[read-only] listener objects가 존재하는 경우는 listener objects를 포함합니다. 그렇지 않은 경우는, 소스 object를 포함합니다.
Validator
  actualTrigger : IEventDispatcher
[read-only] 방아쇠 object가 존재하는 경우는 방아쇠 object를 포함합니다. 그렇지 않은 경우는, 소스 object를 포함합니다.
Validator
  subFields : Array
validate() Methods에게 건네진 value object에 포함되는 property명을 포함한 string의 배열입니다.
Validator
Public Methods
 Methods정의
  Validator ()
constructor   .
Validator
 InheritedaddEventListener (type:String , listener:Function , useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
event listener objects를 EventDispatcher object에 등록해, listener가 이벤트의 통지를 받도록(듯이) 합니다.
EventDispatcher
 InheriteddispatchEvent (event:Event ):Boolean
이벤트를 event 플로우(flow)에 dispatch합니다.
EventDispatcher
 InheritedhasEventListener (type:String ):Boolean
EventDispatcher object에, 특정의 event 타입에 대해서 등록된 listener가 있을지 어떨지를 확인합니다.
EventDispatcher
 InheritedhasOwnProperty (name:String ):Boolean
object로 지정된 property가 정의되고 있는지 어떤지를 나타냅니다.
Object
  initialized (document:Object , id:String ):void
MXML 태그를 사용해 발리 데이터를 작성했을 때에, MXML 컴파일러에 의해 자동적으로 불려 갑니다.
Validator
 InheritedisPrototypeOf (theClass:Object ):Boolean
Object 클래스의 인스턴스가, Parameters로서 지정된 object의 prototype 체인내에 있을지 어떨지를 나타냅니다.
Object
 InheritedpropertyIsEnumerable (name:String ):Boolean
지정된 property가 존재해, 열거 가능한가 어떤가를 나타냅니다.
Object
 InheritedremoveEventListener (type:String , listener:Function , useCapture:Boolean = false):void
EventDispatcher object로부터 listener를 삭제합니다.
EventDispatcher
 InheritedsetPropertyIsEnumerable (name:String , isEnum:Boolean = true):void
루프 처리에 대한 다이나믹 property의 가용성을 설정합니다.
Object
 InheritedtoString ():String
지정된 object의 string 표현을 돌려줍니다.
Object
  validate (value:Object = null, suppressEvents:Boolean = false):ValidationResultEvent
검증을 실행해, 그 결과의 listener를 임의로 통지합니다.
Validator
  validateAll (validators:Array ):Array
[static] validators 배열에 포함되는 모든 발리 데이터를 호출합니다.
Validator
 InheritedvalueOf ():Object
지정된 object의 원시적치를 돌려줍니다.
Object
 InheritedwillTrigger (type:String ):Boolean
지정된 event 타입에 대해, 이 EventDispatcher object 또는 그 조상에게 event listener가 등록되어 있는지 어떤지를 확인합니다.
EventDispatcher
Protected Methods
 Methods정의
  addListenerHandler ():void
발리 데이터로부터 dispatch된 valid event 및 invalid 이벤트의 모든 listener를 설정합니다.
Validator
  doValidation (value:Object ):Array
required property의 값으로 정의되는 것 같은, 검증 에러의 원인이 되는 결손치 및 거짓 가격의 검증을 시작해 이 발리 데이터의 검증 논리를 실행합니다.
Validator
  getValueFromSource ():Object
검증하는 object를 돌려줍니다.
Validator
  handleResults (errorResults:Array ):ValidationResultEvent
에러 결과의 배열로부터 ValidationResultEvent 를 돌려줍니다.
Validator
  isRealValue (value:Object ):Boolean
value 가 null 의 경우,true 를 돌려줍니다.
Validator
  removeListenerHandler ():void
발리 데이터로부터 dispatch된 valid event 및 invalid 이벤트의 모든 listener를 절단 합니다.
Validator
이벤트
 이벤트일람정의
  invalid 검증이 실패하면 dispatch됩니다. Validator
  valid 검증이 정상적으로 완료하면 dispatch됩니다. Validator
Protected 정수
 정수정의
  DECIMAL_DIGITS : String = "0123456789"
[static] 0 에서 9 의 10 진수자를 포함한 string입니다.
Validator
  ROMAN_LETTERS : String = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
[static] 로마자 알파벳의 대문자와 소문자를 포함한 string입니다 ("A" 로부터 "Z", 및 "a" 로부터 "z").
Validator
property의 상세
actualListenersproperty
actualListeners:Array   [read-only]

listener objects가 존재하는 경우는 listener objects를 포함합니다. 그렇지 않은 경우는, 소스 object를 포함합니다. 검증 결과에 대해 통지하는 object를 판단하기 위해서(때문에) 사용합니다.

Implements
    protected function get actualListeners():Array
actualTriggerproperty 
actualTrigger:IEventDispatcher   [read-only]

방아쇠 object가 존재하는 경우는 방아쇠 object를 포함합니다. 그렇지 않은 경우는, 소스 object를 포함합니다. triggerEvent 의 listener objects를 판단하기 위해서(때문에) 사용합니다.

Implements
    protected function get actualTrigger():IEventDispatcher
enabledproperty 
enabled:Boolean   [read-write]

이 값을 false 로 설정하면, 발리 데이터에 의한 검증을 실시할 수 없게 됩니다. 발리 데이터가 무효가 되면, 이벤트는 dispatch되지 않고,validate() Methods에 의해 null 가 돌려주어집니다.

디폴트치true.

Implements
    public function get enabled():Boolean
    public function set enabled(value:Boolean ):void
listenerproperty 
listener:Object   [read-write]

검증의 listener를 지정합니다.

listener를 지정하지 않는 경우, Flex 는 source property의 값을 사용합니다. Flex 가 소스 컴퍼넌트를 조사한 후, 컴퍼넌트의 경계선색을 변경해, 검증에 실패했을 때의 에러 메세지를 표시하는지, 성공했을 때의 기존의 에러 메세지를 덮습니다.

Implements
    public function get listener():Object
    public function set listener(value:Object ):void
propertyproperty 
property:String   [read-write]

검증하는 값을 포함한 source object의 property의 이름을 지정하는 string를 나타냅니다. 네스트 된 property를 지정하기 위해서, 닷 단락의 string가 지원(support)되고 있습니다. 이 property는 옵션입니다만,source 를 지정하는 경우, 이 property에도 값을 설정할 필요가 있습니다.

디폴트치null.

Implements
    public function get property():String
    public function set property(value:String ):void
requiredproperty 
public var required:Boolean

true 의 경우, 검증 에러의 원인이 되는 결손치 또는 거짓 가격을 지정합니다.

디폴트치true.

requiredFieldErrorproperty 
public var requiredFieldError:String

값이 결손해, 게다가 required property가 true 의 경우에 발생하는 에러 메세지입니다.

디폴트치"This field is required. ".

sourceproperty 
source:Object   [read-write]

검증하는 property를 포함한 object를 지정합니다. 이 property에는, 컴퍼넌트 또는 데이터 모델의 인스턴스를 설정합니다. MXML 의 데이터 바인딩 문장구조법을 사용해, 값을 지정합니다. source property에 값을 지정하는 경우,property property에도 값을 지정할 필요가 있습니다. source property는 옵션입니다.

디폴트치null.

Implements
    public function get source():Object
    public function set source(value:Object ):void
subFieldsproperty 
protected var subFields:Array

validate() Methods에게 건네진 value object에 포함되는 property명을 포함한 string의 배열입니다. 예를 들어, CreditCardValidator 는 이 property를 [ "cardNumber", "cardType" ] 로 설정합니다. 이 값은,validate() Methods에게 건네진 value object에 cardNumber property 및 cardType property가 포함되는 것을 의미합니다.

복수의 데이터 필드를 검증하는 Validator 클래스의 서브 클래스 (CreditCardValidator 및 DateValidator 등)는, constructor    에 이 property를 할당할 필요가 있습니다.

triggerproperty 
trigger:IEventDispatcher   [read-write]

발리 데이터를 방아쇠 하는 이벤트의 생성을 실시하는 컴퍼넌트를 지정합니다. 지정을 생략 했을 경우, Flex 는 디폴트로 source property의 값을 사용합니다. trigger 에 의해 triggerEvent 가 dispatch되면, 검증이 실행됩니다.

Implements
    public function get trigger():IEventDispatcher
    public function set trigger(value:IEventDispatcher ):void
triggerEventproperty 
triggerEvent:String   [read-write]

검증을 방아쇠 하는 이벤트를 지정합니다. 지정을 생략 하면, Flex 는 valueCommit 이벤트를 사용합니다. 유저가 컨트롤에 데이터를 입력 끝마치면, Flex 는 valueCommit 이벤트를 dispatch합니다. 통상 이것은, 유저가 컴퍼넌트로부터 포커스를 이동했을 때인가, property치가 프로그램에 의해 변경되었을 때입니다. 발리 데이터에 모든 이벤트를 무시시키고 싶은 경우는,triggerEvent 를 empty의 string ("")로 설정합니다.

Implements
    public function get triggerEvent():String
    public function set triggerEvent(value:String ):void
constructor    의 상세
Validator()constructor   
public 함수 Validator()

constructor   .

Methods의 상세
addListenerHandler()Methods
protected function addListenerHandler():void

발리 데이터로부터 dispatch된 valid event 및 invalid 이벤트의 모든 listener를 설정합니다. Validator 클래스의 서브 클래스는 우선 removeListenerHandler() Methods를 호출해, 서브 클래스의 listener 또는 소스의 몇개의 값이 변경되었을 경우는,addListenerHandler() Methods를 호출할 필요가 있습니다. CreditCardValidator 클래스와 DateValidator 클래스는 이 함수를 내부적으로 사용합니다.

doValidation()Methods 
protected function doValidation(value:Object ):Array

required property의 값으로 정의되는 것 같은, 검증 에러의 원인이 되는 결손치 및 거짓 가격의 검증을 시작해 이 발리 데이터의 검증 논리를 실행합니다.

발리 데이터 클래스의 서브 클래스를 작성하는 경우, 이 Methods를 재정의(override) 할 필요가 있습니다.

Parameters
value:Object — 검증하는 값을 나타냅니다.

반환값
Array — 무효인 결과에 있어서의 ValidationResult object의 배열입니다. 이 object는, 검증에 실패한 발리 데이터로 검증을 하는 각 필드 마다 1 개 포함됩니다.

See also

getValueFromSource()Methods 
protected function getValueFromSource():Object

검증하는 object를 돌려줍니다. CreditCardValidator 클래스나 DateValidator 클래스등의 서브 클래스는, 복수의 subfield로부터 값에 액세스 할 필요가 있기 (위해)때문에, 이 Methods를 재정의(override) 합니다.

반환값
Object — 검증하는 object입니다.
handleResults()Methods 
protected function handleResults(errorResults:Array ):ValidationResultEvent

에러 결과의 배열로부터 ValidationResultEvent 를 돌려줍니다. 이 함수는 내부적으로 doValidation() Methods의 결과를 취득해, ValidationResultEvent object에 배치합니다. RegExpValidator 클래스등의 서브 클래스는, RegExpValidationResult object등의 ValidationResultEvent object의 서브 클래스를 출력해, object에 정보를 추가할 필요가 있는 경우, 이 함수를 재정의(override) 합니다. 이 함수는 직접 불려 가지 않기 때문에, 재정의(override) 되는 것은 거의 없습니다.

Parameters
errorResults:Array — ValidationResult object의 배열입니다.

반환값
ValidationResultEvent validate() Methods에 의해 돌려주어지는 ValidationResultEvent 입니다.
initialized()Methods 
public function initialized(document:Object , id:String ):void

MXML 태그를 사용해 발리 데이터를 작성했을 때에, MXML 컴파일러에 의해 자동적으로 불려 갑니다.

Parameters
document:Object — 이 발리 데이터를 포함한 MXML 문서를 나타냅니다.
 
id:String — 무시됩니다.
isRealValue()Methods 
protected function isRealValue(value:Object ):Boolean

value 가 null 의 경우,true 를 돌려줍니다.

Parameters
value:Object — 테스트하는 값입니다.

반환값
Boolean value 가 null 의 경우는,true 입니다.
removeListenerHandler()Methods 
protected function removeListenerHandler():void

발리 데이터로부터 dispatch된 valid event 및 invalid 이벤트의 모든 listener를 절단 합니다. 서브 클래스는 우선 removeListenerHandler() Methods를 호출해, 서브 클래스의 listener 또는 소스의 몇개의 값이 변경되었을 경우는,addListenerHandler Methods를 호출할 필요가 있습니다. CreditCardValidator 클래스와 DateValidator 클래스는 이 함수를 내부적으로 사용합니다.

validate()Methods 
public function validate(value:Object = null, suppressEvents:Boolean = false):ValidationResultEvent

검증을 실행해, 그 결과의 listener를 임의로 통지합니다.

Parameters
value:Object (default = null) — 검증하는 옵션의 값입니다. null 의 경우, 발리 데이터는 source property 및 property property를 사용해 값을 결정합니다. 이 Parameters를 지정하는 경우,listener property도 설정해 검증 에러 메세지의 대상이 되는 컴퍼넌트를 지정할 필요가 있습니다.
 
suppressEvents:Boolean (default = false)false 의 경우, 검증 후에 발리 데이터가 결과의 listener를 통지합니다.

반환값
ValidationResultEvent — 검증 결과를 포함한 ValidationResultEvent object를 나타냅니다. 검증이 성공했을 경우,ValidationResultEvent.results 배열 property는 empty이 됩니다. 검증에 실패했을 경우,ValidationResultEvent.results 배열 property에는, 발리 데이터에 의한 검증의 성공 또는 실패를 불문하고, 검증한 필드 각각 붙어 1 개의 ValidationResult object가 포함됩니다. ValidationResult.isError property를 검사해, 필드가 검증에 성공했는지 또는 실패했는지를 판단합니다.

See also

validateAll()Methods 
public static function validateAll(validators:Array ):Array

validators 배열에 포함되는 모든 발리 데이터를 호출합니다. 실패한 발리 데이터 마다 1 개의 ValidationResultEvent object를 포함한 배열을 돌려줍니다. 모든 발리 데이터가 성공했을 경우는, empty의 배열을 돌려줍니다.

Parameters
validators:Array — 실행하는 Validator object를 포함한 배열입니다.

반환값
Array — ValidationResultEvent object의 배열로, 배열에는 실패한 발리 데이터 마다 1 개의 ValidationResultEvent object가 포함됩니다. 모든 발리 데이터가 성공했을 경우, 배열은 비웁니다.
이벤트의 상세
invalidevent 
Event object type: mx.events.ValidationResultEvent
ValidationResultEvent.type property = mx.events.ValidationResultEvent.INVALID

검증이 실패하면 dispatch됩니다.

ValidationResultEvent.INVALID 정수에 의해,invalid 이벤트의 event object의 type property치가 정의됩니다. 이 정수의 값은 "invalid" 입니다.

event object의 각 property에는 다음의 값이 설정됩니다.

PropertyValue
bubblesfalse
cancelablefalse
currentTarget이벤트를 처리하는 event listener를 정의하는 object. 예를 들어, event listener의 등록에 myButton.addEventListener() 를 사용하면,currentTarget 의 값은 "myButton" 가 됩니다.
field검증에 실패한 필드의 이름을 나타냅니다.
messageresults 배열내의 모든 ValidationResult object로부터 받은 에러 메세지가 모두 포함되고 있는 단독의 string를 나타냅니다.
resultsValidationResult object의 배열을 나타냅니다. 이 object는 검증 끝난 필드에 각자 1 개씩 포함됩니다.
target이벤트를 dispatch한 object를 나타냅니다. 이 object는 반드시 이벤트를 받는 object라고는 할 수 없습니다. 이벤트를 받는 object에 항상 액세스 하려면 ,currentTarget property를 사용해 주세요.
validevent  
Event object type: mx.events.ValidationResultEvent
ValidationResultEvent.type property = mx.events.ValidationResultEvent.VALID

검증이 정상적으로 완료하면 dispatch됩니다.

ValidationResultEvent.VALID 정수에 의해,valid 이벤트의 event object의 type property치가 정의됩니다. 이 정수의 값은 "valid" 입니다.

event object의 각 property에는 다음의 값이 설정됩니다.

PropertyValue
bubblesfalse
cancelablefalse
currentTarget이벤트를 처리하는 event listener를 정의하는 object. 예를 들어, event listener의 등록에 myButton.addEventListener() 를 사용하면,currentTarget 의 값은 "myButton" 가 됩니다.
fieldempty의 string를 나타냅니다.
messageempty의 string를 나타냅니다.
resultsempty의 배열을 나타냅니다.
target이벤트를 dispatch한 object를 나타냅니다. 이 object는 반드시 이벤트를 받는 object라고는 할 수 없습니다. 이벤트를 받는 object에 항상 액세스 하려면 ,currentTarget property를 사용해 주세요.
정수의 상세
DECIMAL_DIGITS정수
protected static const DECIMAL_DIGITS:String = "0123456789"

0 에서 9 의 10 진수자를 포함한 string입니다.

ROMAN_LETTERS정수 
protected static const ROMAN_LETTERS:String = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"

로마자 알파벳의 대문자와 소문자를 포함한 string입니다 ("A" 로부터 "Z", 및 "a" 로부터 "z").

Examples
SimpleValidatorExample
<? xml version="1.0"? >
<! -- Simple example to demonstrate the Validator class.  -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">

    <mx:Script>
        <! [CDATA[

            // Import necessary classes.
            import mx.controls.Alert;
            import mx.events.ValidationResultEvent;
            
            // Event listener for the valid and invalid events.
            private function handleValid(eventObj:ValidationResultEvent) :void {
                if(eventObj.type==ValidationResultEvent.VALID)    
                    // Enable Submit button.
                    submitButton.enabled = true;
                else
                    submitButton.enabled = false;
            }

            // Submit form is everything is valid.  
            private function submitForm() :void {
                Alert.show("Form Submitted! ");
            }

        ]]>
    </mx:Script>

    <! -- The Validator class defines the required property and the validator events
         used by all validator subclasses.  -->
    <mx:Validator id="reqValid" required="true"
        source="{fname}" property="text" 
        valid="handleValid(event)" invalid="handleValid(event)"/>
        
    <mx:Panel title="Validator Example" width="100%" height="100%" 
            paddingTop="5" paddingLeft="5" paddingRight="5" paddingBottom="5">

        <mx:Form>
            <mx:Text width="100%" color="blue"
                text="Enter a value in the Name field before you can submit.  The E-mail field is optional. "/>

            <mx:FormItem label="Name: " required="true">
                <mx:TextInput id="fname" width="100%"/>
            </mx:FormItem>

            <mx:FormItem label="E-mail address: " required="false">
                <mx:TextInput id="email" width="100%"/>
            </mx:FormItem>
            
            <mx:FormItem>
                <mx:Button id="submitButton" enabled="false" 
                    label="Submit" click="submitForm();"/>
            </mx:FormItem>
        </mx:Form>

    </mx:Panel>
</mx:Application>






 

코멘트가 추가되었을 경우, 메일로 받기. | 코멘트 리포트

현재의 페이지: http://flexdocs.kr/docs/flex2/langref/mx/validators/Validator.html