Package | mx.validators |
Class | public class NumberValidator |
Inheritance | NumberValidator Validator EventDispatcher Object |
Language Version: | ActionScript 3.0 |
Product Version: | Flex 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Starting with Flex 4.5, Adobe recommends that you use the spark.validators.NumberValidator class as an alternative to this class. |
The NumberValidator class ensures that a String represents a valid number. It can ensure that the input falls within a given range (specified by
minValue
and maxValue
),
is an integer (specified by domain
),
is non-negative (specified by allowNegative
),
and does not exceed the specified precision
.
The validator correctly validates formatted numbers (e.g., "12,345.67")
and you can customize the thousandsSeparator
and
decimalSeparator
properties for internationalization.
MXML SyntaxHide MXML SyntaxThe <mx:NumberValidator>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<mx:NumberValidator allowNegative="true|false" decimalPointCountError="The decimal separator can only occur once." decimalSeparator="." domain="real|int" exceedsMaxError="The number entered is too large." integerError="The number must be an integer." invalidCharError="The input contains invalid characters." invalidFormatCharsError="One of the formatting parameters is invalid." lowerThanMinError="The amount entered is too small." maxValue="NaN" minValue="NaN" negativeError="The amount may not be negative." precision="-1" precisionError="The amount entered has too many digits beyond the decimal point." separationError="The thousands separator must be followed by three digits." thousandsSeparator="," />
More examples
Property | Defined By | ||
---|---|---|---|
allowNegative : Object
Specifies whether negative numbers are permitted. | NumberValidator | ||
constructor : Object
A reference to the class object or constructor function for a given object instance. | Object | ||
decimalPointCountError : String
Error message when the decimal separator character occurs more than once. | NumberValidator | ||
decimalSeparator : String
The character used to separate the whole
from the fractional part of the number. | NumberValidator | ||
domain : String
Type of number to be validated. | NumberValidator | ||
enabled : Boolean
Setting this value to false will stop the validator
from performing validation. | Validator | ||
exceedsMaxError : String
Error message when the value exceeds the maxValue property. | NumberValidator | ||
integerError : String
Error message when the number must be an integer, as defined
by the domain property. | NumberValidator | ||
invalidCharError : String
Error message when the value contains invalid characters. | NumberValidator | ||
invalidFormatCharsError : String
Error message when the value contains invalid format characters, which means that
it contains a digit or minus sign (-) as a separator character,
or it contains two or more consecutive separator characters. | NumberValidator | ||
listener : Object
Specifies the validation listener. | Validator | ||
lowerThanMinError : String
Error message when the value is less than minValue. | NumberValidator | ||
maxValue : Object
Maximum value for a valid number. | NumberValidator | ||
minValue : Object
Minimum value for a valid number. | NumberValidator | ||
negativeError : String
Error message when the value is negative and the
allowNegative property is false. | NumberValidator | ||
precision : Object
The maximum number of digits allowed to follow the decimal point. | NumberValidator | ||
precisionError : String
Error message when the value has a precision that exceeds the value defined
by the precision property. | NumberValidator | ||
property : String
A String specifying the name of the property
of the source object that contains
the value to validate. | Validator | ||
required : Boolean = true
If true, specifies that a missing or empty
value causes a validation error. | Validator | ||
requiredFieldError : String
Error message when a value is missing and the
required property is true. | Validator | ||
separationError : String
Error message when the thousands separator is in the wrong location. | NumberValidator | ||
source : Object
Specifies the object containing the property to validate. | Validator | ||
thousandsSeparator : String
The character used to separate thousands
in the whole part of the number. | NumberValidator | ||
trigger : IEventDispatcher
Specifies the component generating the event that triggers the validator. | Validator | ||
triggerEvent : String
Specifies the event that triggers the validation. | Validator |
Method | Defined By | ||
---|---|---|---|
Constructor. | NumberValidator | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registers an event listener object with an EventDispatcher object so that the listener
receives notification of an event. | EventDispatcher | ||
Dispatches an event into the event flow. | EventDispatcher | ||
Checks whether the EventDispatcher object has any listeners registered for a specific type
of event. | EventDispatcher | ||
Indicates whether an object has a specified property defined. | Object | ||
Called automatically by the MXML compiler when the Validator
is created using an MXML tag. | Validator | ||
Indicates whether an instance of the Object class is in the prototype chain of the object specified
as the parameter. | Object | ||
Indicates whether the specified property exists and is enumerable. | Object | ||
Removes a listener from the EventDispatcher object. | EventDispatcher | ||
Sets the availability of a dynamic property for loop operations. | Object | ||
Returns the string representation of this object, formatted according to locale-specific conventions. | Object | ||
Returns the string representation of the specified object. | Object | ||
Performs validation and optionally notifies
the listeners of the result. | Validator | ||
[static]
Invokes all the validators in the validators Array. | Validator | ||
[static]
Convenience method for calling a validator
from within a custom validation function. | NumberValidator | ||
Returns the primitive value of the specified object. | Object | ||
Checks whether an event listener is registered with this EventDispatcher object or any of
its ancestors for the specified event type. | EventDispatcher |
Method | Defined By | ||
---|---|---|---|
Sets up all of the listeners for the
valid and invalid
events dispatched from the validator. | Validator | ||
[override]
Override of the base class doValidation() method
to validate a number. | NumberValidator | ||
Returns the Object to validate. | Validator | ||
Returns a ValidationResultEvent from the Array of error results. | Validator | ||
Returns true if value is not null. | Validator | ||
Disconnects all of the listeners for the
valid and invalid
events dispatched from the validator. | Validator | ||
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 |
allowNegative | property |
allowNegative:Object
Language Version: | ActionScript 3.0 |
Product Version: | Flex 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Specifies whether negative numbers are permitted.
Valid values are true
or false
.
The default value is true.
Implementation
public function get allowNegative():Object
public function set allowNegative(value:Object):void
decimalPointCountError | property |
decimalPointCountError:String
Language Version: | ActionScript 3.0 |
Product Version: | Flex 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Error message when the decimal separator character occurs more than once.
The default value is "The decimal separator can occur only once.".
Implementation
public function get decimalPointCountError():String
public function set decimalPointCountError(value:String):void
decimalSeparator | property |
decimalSeparator:String
Language Version: | ActionScript 3.0 |
Product Version: | Flex 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
The character used to separate the whole
from the fractional part of the number.
Cannot be a digit and must be distinct from the
thousandsSeparator
.
The default value is ".".
Implementation
public function get decimalSeparator():String
public function set decimalSeparator(value:String):void
domain | property |
domain:String
Language Version: | ActionScript 3.0 |
Product Version: | Flex 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Type of number to be validated.
Permitted values are "real"
and "int"
.
In ActionScript, you can use the following constants to set this property:
NumberValidatorDomainType.REAL
or
NumberValidatorDomainType.INT
.
The default value is "real".
Implementation
public function get domain():String
public function set domain(value:String):void
exceedsMaxError | property |
exceedsMaxError:String
Language Version: | ActionScript 3.0 |
Product Version: | Flex 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Error message when the value exceeds the maxValue
property.
The default value is "The number entered is too large.".
Implementation
public function get exceedsMaxError():String
public function set exceedsMaxError(value:String):void
integerError | property |
integerError:String
Language Version: | ActionScript 3.0 |
Product Version: | Flex 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Error message when the number must be an integer, as defined
by the domain
property.
The default value is "The number must be an integer.".
Implementation
public function get integerError():String
public function set integerError(value:String):void
invalidCharError | property |
invalidCharError:String
Language Version: | ActionScript 3.0 |
Product Version: | Flex 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Error message when the value contains invalid characters.
The default value is The input contains invalid characters.".
Implementation
public function get invalidCharError():String
public function set invalidCharError(value:String):void
invalidFormatCharsError | property |
invalidFormatCharsError:String
Language Version: | ActionScript 3.0 |
Product Version: | Flex 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Error message when the value contains invalid format characters, which means that it contains a digit or minus sign (-) as a separator character, or it contains two or more consecutive separator characters.
The default value is "One of the formatting parameters is invalid.".
Implementation
public function get invalidFormatCharsError():String
public function set invalidFormatCharsError(value:String):void
lowerThanMinError | property |
lowerThanMinError:String
Language Version: | ActionScript 3.0 |
Product Version: | Flex 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Error message when the value is less than minValue
.
The default value is "The amount entered is too small.".
Implementation
public function get lowerThanMinError():String
public function set lowerThanMinError(value:String):void
maxValue | property |
maxValue:Object
Language Version: | ActionScript 3.0 |
Product Version: | Flex 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Maximum value for a valid number. A value of NaN means there is no maximum.
The default value is NaN.
Implementation
public function get maxValue():Object
public function set maxValue(value:Object):void
minValue | property |
minValue:Object
Language Version: | ActionScript 3.0 |
Product Version: | Flex 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Minimum value for a valid number. A value of NaN means there is no minimum.
The default value is NaN.
Implementation
public function get minValue():Object
public function set minValue(value:Object):void
negativeError | property |
negativeError:String
Language Version: | ActionScript 3.0 |
Product Version: | Flex 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Error message when the value is negative and the
allowNegative
property is false
.
The default value is "The amount may not be negative.".
Implementation
public function get negativeError():String
public function set negativeError(value:String):void
precision | property |
precision:Object
Language Version: | ActionScript 3.0 |
Product Version: | Flex 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
The maximum number of digits allowed to follow the decimal point.
Can be any nonnegative integer.
Note: Setting to 0
has the same effect
as setting domain
to "int"
.
A value of -1 means it is ignored.
The default value is -1.
Implementation
public function get precision():Object
public function set precision(value:Object):void
precisionError | property |
precisionError:String
Language Version: | ActionScript 3.0 |
Product Version: | Flex 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Error message when the value has a precision that exceeds the value defined by the precision property.
The default value is "The amount entered has too many digits beyond the decimal point.".
Implementation
public function get precisionError():String
public function set precisionError(value:String):void
separationError | property |
separationError:String
Language Version: | ActionScript 3.0 |
Product Version: | Flex 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Error message when the thousands separator is in the wrong location.
The default value is "The thousands separator must be followed by three digits.".
Implementation
public function get separationError():String
public function set separationError(value:String):void
thousandsSeparator | property |
thousandsSeparator:String
Language Version: | ActionScript 3.0 |
Product Version: | Flex 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
The character used to separate thousands
in the whole part of the number.
Cannot be a digit and must be distinct from the
decimalSeparator
.
The default value is ",".
Implementation
public function get thousandsSeparator():String
public function set thousandsSeparator(value:String):void
NumberValidator | () | Constructor |
public function NumberValidator()
Language Version: | ActionScript 3.0 |
Product Version: | Flex 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Constructor.
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 number.
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.
|
Array — An Array of ValidationResult objects, with one ValidationResult
object for each field examined by the validator.
|
validateNumber | () | method |
public static function validateNumber(validator:NumberValidator, value:Object, baseField:String):Array
Language Version: | ActionScript 3.0 |
Product Version: | Flex 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Convenience method for calling a validator from within a custom validation function. Each of the standard Flex validators has a similar convenience method.
Parameters
validator:NumberValidator — The NumberValidator instance.
| |
value:Object — A field to validate.
| |
baseField:String — Text representation of the subfield
specified in the value parameter.
For example, if the value parameter specifies value.number,
the baseField value is "number".
|
Array — An Array of ValidationResult objects, with one ValidationResult
object for each field examined by the validator.
|
Related API Elements
<?xml version="1.0" encoding="utf-8"?> <!-- Simple example to demonstrate the NumberValidator. --> <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:NumberValidator source="{age}" property="text" integerError="Enter Integer value" minValue="18" maxValue="50" domain="int" trigger="{myButton}" triggerEvent="click" valid="Alert.show('Validation Succeeded!');" invalid="Alert.show('Validation failed!');"/> </fx:Declarations> <s:Panel title="NumberValidator Example" width="75%" height="75%" horizontalCenter="0" verticalCenter="0"> <mx:Form left="10" right="10" top="10" bottom="10"> <mx:FormItem label="Enter an age between 18 and 50:"> <s:TextInput id="age" width="100%"/> </mx:FormItem> <mx:FormItem > <s:Button id="myButton" label="Validate" /> </mx:FormItem> </mx:Form> </s:Panel> </s:Application>
Wed Nov 21 2018, 06:34 AM -08:00