Packagemx.validators
Classpublic class StringValidator
InheritanceStringValidator Inheritance Validator Inheritance flash.events.EventDispatcher

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

The StringValidator class validates that the length of a String is within a specified range.

MXML SyntaxexpandedHide MXML Syntax

The <mx:StringValidator> tag inherits all of the tag attributes of its superclass, and add the following tag attributes:

  <mx:StringValidator
    maxLength="NaN" 
    minLength="NaN" 
    tooLongError="This string is longer than the maximum allowed length. This must be less than {0} characters long." 
    tooShortError="This string is shorter than the minimum allowed length. This must be at least {0} characters long." 
  />
  

View the examples



Public Properties
 PropertyDefined By
 Inheritedenabled : Boolean
Setting this value to false will stop the validator from performing validation.
Validator
 Inheritedlistener : Object
Specifies the validation listener.
Validator
  maxLength : Object
Maximum length for a valid String.
StringValidator
  minLength : Object
Minimum length for a valid String.
StringValidator
 Inheritedproperty : String
A String specifying the name of the property of the source object that contains the value to validate.
Validator
 Inheritedrequired : Boolean
If true, specifies that a missing or empty value causes a validation error.
Validator
 InheritedrequiredFieldError : String
Error message when a value is missing and the required property is true.
Validator
 Inheritedsource : Object
Specifies the object containing the property to validate.
Validator
  tooLongError : String
Error message when the String is longer than the maxLength property.
StringValidator
  tooShortError : String
Error message when the string is shorter than the minLength property.
StringValidator
 Inheritedtrigger : IEventDispatcher
Specifies the component generating the event that triggers the validator.
Validator
 InheritedtriggerEvent : String
Specifies the event that triggers the validation.
Validator
Protected Properties
 PropertyDefined By
 InheritedactualListeners : Array
[read-only] Contains an Array of listener objects, if any, or the source object.
Validator
 InheritedactualTrigger : IEventDispatcher
[read-only] Contains the trigger object, if any, or the source object.
Validator
 InheritedresourceManager : IResourceManager
[read-only] A reference to the object which manages all of the application's localized resources.
Validator
 InheritedsubFields : Array
An Array of Strings containing the names for the properties contained in the value Object passed to the validate() method.
Validator
Public Methods
 MethodDefined By
  
Constructor.
StringValidator
 Inherited
initialized(document:Object, id:String):void
Called automatically by the MXML compiler when the Validator is created using an MXML tag.
Validator
 Inherited
validate(value:Object = null, suppressEvents:Boolean = false):ValidationResultEvent
Performs validation and optionally notifies the listeners of the result.
Validator
 Inherited
validateAll(validators:Array):Array
[static] Invokes all the validators in the validators Array.
Validator
  
validateString(validator:StringValidator, value:Object, baseField:String = null):Array
[static] Convenience method for calling a validator.
StringValidator
Protected Methods
 MethodDefined By
 Inherited
Sets up all of the listeners for the valid and invalid events dispatched from the validator.
Validator
  
doValidation(value:Object):Array
[override] Override of the base class doValidation() method to validate a String.
StringValidator
 Inherited
Returns the Object to validate.
Validator
 Inherited
Returns a ValidationResultEvent from the Array of error results.
Validator
 Inherited
isRealValue(value:Object):Boolean
Returns true if value is not null.
Validator
 Inherited
Disconnects all of the listeners for the valid and invalid events dispatched from the validator.
Validator
 Inherited
This method is called when a Validator is constructed, and again whenever the ResourceManager dispatches a "change" Event to indicate that the localized resources have changed in some way.
Validator
Events
 Event Summary Defined By
 InheritedDispatched when validation fails.Validator
 InheritedDispatched when validation succeeds.Validator
Protected Constants
 ConstantDefined By
 InheritedDECIMAL_DIGITS : String = 0123456789
[static] A String containing the decimal digits 0 through 9.
Validator
 InheritedROMAN_LETTERS : String = ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
[static] A string containing the upper- and lower-case letters of the Roman alphabet ("A" through "Z" and "a" through "z").
Validator
Property Detail
maxLengthproperty
maxLength:Object

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

Maximum length for a valid String. A value of NaN means this property is ignored.

The default value is NaN.


Implementation
    public function get maxLength():Object
    public function set maxLength(value:Object):void
minLengthproperty 
minLength:Object

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

Minimum length for a valid String. A value of NaN means this property is ignored.

The default value is NaN.


Implementation
    public function get minLength():Object
    public function set minLength(value:Object):void
tooLongErrorproperty 
tooLongError:String

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

Error message when the String is longer than the maxLength property.

The default value is "This string is longer than the maximum allowed length. This must be less than {0} characters long.".


Implementation
    public function get tooLongError():String
    public function set tooLongError(value:String):void
tooShortErrorproperty 
tooShortError:String

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

Error message when the string is shorter than the minLength property.

The default value is "This string is shorter than the minimum allowed length. This must be at least {0} characters long.".


Implementation
    public function get tooShortError():String
    public function set tooShortError(value:String):void
Constructor Detail
StringValidator()Constructor
public function StringValidator()

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

Constructor.

Method Detail
doValidation()method
override protected function doValidation(value:Object):Array

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

Override of the base class doValidation() method to validate a String.

You do not call this method directly; Flex calls it as part of performing a validation. If you create a custom Validator class, you must implement this method.

Parameters

value:Object — Object to validate.

Returns
Array — An Array of ValidationResult objects, with one ValidationResult object for each field examined by the validator.
validateString()method 
public static function validateString(validator:StringValidator, value:Object, baseField:String = null):Array

Language Version : ActionScript 3.0
Product Version : Flex 3
Runtime Versions : Flash Player 9, AIR 1.1

Convenience method for calling a validator. Each of the standard Flex validators has a similar convenience method.

Parameters

validator:StringValidator — The StringValidator instance.
 
value:Object — A field to validate.
 
baseField:String (default = null) — Text representation of the subfield specified in the value parameter. For example, if the value parameter specifies value.mystring, the baseField value is "mystring".

Returns
Array — An Array of ValidationResult objects, with one ValidationResult object for each field examined by the validator.

See also

Examples
StringValidatorExample.mxml
<?xml version="1.0" encoding="utf-8"?>
<!--

  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.

-->
<!-- Simple example to demonstrate StringValidator. -->
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
        xmlns:s="library://ns.adobe.com/flex/spark"
        xmlns:mx="library://ns.adobe.com/flex/mx">

    <fx:Script>
        import mx.controls.Alert;
    </fx:Script>

    <fx:Declarations>
        <mx:StringValidator source="{fname}" property="text" 
                tooShortError="This string is shorter than the minimum allowed length of 4. " 
                tooLongError="This string is longer than the maximum allowed length of 20." 
                minLength="4" maxLength="20"  
                trigger="{myButton}" triggerEvent="click" 
                valid="Alert.show('Validation Succeeded!');"
                invalid="Alert.show('Validation Failed!');"/>
    </fx:Declarations>

    <s:Panel title="StringValidator Example"
            width="75%" height="75%"
            horizontalCenter="0" verticalCenter="0">
        <mx:Form left="10" right="10" top="10" bottom="10">
                <mx:FormItem label="Enter a name between 4 and 20 characters: ">
                    <s:TextInput id="fname" width="100%"/>
                </mx:FormItem>
                <mx:FormItem >
                    <s:Button id="myButton" label="Validate" />
                </mx:FormItem>
        </mx:Form>
    </s:Panel>

</s:Application>