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
Learn more
About the source and property properties
About triggering validation
Triggering validation by using events
Triggering validation programmatically
Validating required fields
General guidelines for validation
Working with validation errors
Working with validation events
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>
Thu Dec 6 2018, 01:12 PM -08:00