| メソッド | プロパティ | 例 | フレームあり | フレームなし |
NumberValidator クラスは、ストリングが有効な数値であることを表します。このクラスでは、入力値が特定の範囲 (minValue と maxValue で指定) に収まっていること、整数であること (domain で指定)、負の数値ではないこと (allowNegative で指定)、および表示される桁数が指定した数を超えないこと確認できます。NumberValidator では、12,345.67 のように形式が適用された数値を正確に検証します。thousandsSeparator および decimalSeparator は、国際化に対応してカスタマイズできます。
MXML シンタックス
<mx:NumberValidator> タグは、親クラスのプロパティと、次のプロパティを受け取ります。
<mx:NumberValidator例を参照するにはここをクリックしてください
minValue="min value - no default"
maxValue="max value - no default"
domain="real|int"
decimalSeparator="character used to separate the whole part from the fractional part of the number - default is '.'"
thousandsSeparator="character allowed to separate every three digits in the whole part of the number - default is ','"
precision="how many digits to allow beyond the decimal point, can be any nonnegative integer - default is undefined"
allowNegative="true|false"
exceedsMaxError="The number entered is too large."
lowerThanMinError="The number entered is too small."
integerError="The number must be an integer."
negativeError="The number may not be negative."
precisionError="The number entered has too many digits beyond the decimal point."
separationError="The thousands separator must be followed by three digits."
decimalPointCountError="The decimal separator can only occur once."
invalidCharError="The input contains invalid characters."
invalidFormatCharsError="One of the formatting parameters is invalid."
/>
| メソッド | |
| doValidation( value:Object)
: Void数値を検証します。 |
static | validateNumber( validator:mx.validators.Validator, value:Object, paramObj:Object, baseField:String)
: Boolean <mx:Validator> タグを使用する場合に、カスタム検証関数からバリデータを呼び出す便利なメソッドです。 |
| mx.validators.Validator クラスから継承されるメソッド |
disable doValidation enable hasErrors isStructureValid isValid validateRequired validationError |
| プロパティ | |
| allowNegative:Boolean負の数値が使用可能かどうかを指定します。 |
| decimalPointCountError:Stringエラーメッセージを表します。 |
| decimalSeparator:String小数部を区切る文字を表します。 |
| domain:String検証する数値の型を表します。 |
| exceedsMaxError:Stringエラーメッセージを表します。 |
| integerError:Stringエラーメッセージを表します。 |
| invalidCharError:Stringエラーメッセージを表します。 |
| invalidFormatCharsError:Stringエラーメッセージを表します。 |
| lowerThanMinError:Stringエラーメッセージを表します。 |
| maxValue:Number有効な数値の最大値を表します。 |
| minValue:Number有効な数値の最小値を表します。 |
| negativeError:Stringエラーメッセージを表します。 |
| precision:Number小数部の最大桁数を表します。 |
| precisionError:Stringエラーメッセージを表します。 |
| separationError:Stringエラーメッセージを表します。 |
| thousandsSeparator:String数値の整数部を 3 桁ごとに区切るために使用する文字を表します。 |
| mx.validators.Validator クラスから継承されるプロパティ |
field listener required requiredFieldError validate |
| メソッドの詳細 |
doValidation( value:Object)
: Void
パラメータ
value:Object - 検証する数値を表します。
static validateNumber( validator:mx.validators.Validator, value:Object, paramObj:Object, baseField:String)
: Boolean
パラメータ
validator:mx.validators.Validator - Validator インスタンスです。
value:Object - value.subfield。タグの field プロパティで指定された値のサブフィールドを subfield として指定します。
paramObj:Object - パラメータ情報 (エラーメッセージ、最小値と最大値など) を含んだオブジェクトを指定します。このパラメータはオプションですが、baseField を指定する場合には、null を指定します。
baseField:String - value パラメータで指定した subfield のテキスト表現を指定します。たとえば、value パラメータで value.number を指定する場合、baseField の値は "number" です。
| プロパティの詳細 |
allowNegative:Boolean
または false を指定します。デフォルト値は true です。
decimalPointCountError
decimalPointCountError:String
エラーメッセージを表します。デフォルト値は "The decimal separator can only occur once." です。
decimalSeparator
decimalSeparator:String
小数部を区切る文字を表します。数字は使用できず、thousandsSeparator とは異なるストリングにする必要があります。デフォルト値は "." です。
domain
domain:String
検証する数値の型を表します。有効な値は real および int です。デフォルト値は real です。
exceedsMaxError
exceedsMaxError:String
エラーメッセージを表します。デフォルト値は "The number entered is too large." です。
integerError
integerError:String
エラーメッセージを表します。デフォルト値は "The number must be an integer." です。
invalidCharError
invalidCharError:String
エラーメッセージを表します。デフォルト値は "The input contains invalid characters." です。
invalidFormatCharsError
invalidFormatCharsError:String
エラーメッセージを表します。デフォルト値は、"One of the formatting parameters is invalid." です。
lowerThanMinError
lowerThanMinError:String
エラーメッセージを表します。デフォルト値は "The number entered is too small." です。
maxValue
maxValue:Number
有効な数値の最大値を表します。デフォルトでは使用されません。
minValue
minValue:Number
有効な数値の最小値を表します。デフォルトでは使用されません。
negativeError
negativeError:String
エラーメッセージを表します。デフォルト値は "The number may not be negative." です。
precision
precision:Number
小数部の最大桁数を表します。負以外の任意の整数を設定できます。メモ : 0 を設定した場合は、domain を int に設定した場合と同じ結果になります。デフォルトでは使用されません。
precisionError
precisionError:String
エラーメッセージを表します。デフォルト値は "The number entered has too many digits beyond the decimal point." です。
separationError
separationError:String
エラーメッセージを表します。デフォルト値は "The thousands separator must be followed by three digits." です。
thousandsSeparator
thousandsSeparator:String
数値の整数部を 3 桁ごとに区切るのに使用する文字を表します。数字は使用できず、decimalSeparator とは異なるストリングにする必要があります。デフォルト値は "," です。
例
NumberValidatorExample.mxml
<?xml version="1.0" encoding="utf-8"?>
<!-- Number バリデータの使用方法を示す簡単な例 -->
<mx:Application xmlns:mx="http://www.macromedia.com/2003/mxml" backgroundColor="#FFFFFF">
<mx:Model id="CheckModel">
<Age>{age.text}</Age>
</mx:Model>
<mx:Panel title="Number Validator Panel" backgroundColor="#0C8BF3">
<mx:VBox>
<mx:Form>
<mx:FormItem label="Entre Age between 18 and 50:" color="#FFFFFF">
<mx:TextInput id="age" width="200" color="#000000"/>
</mx:FormItem>
</mx:Form>
<mx:Label text="*press enter to check validation." color="#FFCCCC"/>
</mx:VBox>
</mx:Panel>
<mx:NumberValidator field="CheckModel.Age" integerError="Enter Integer value"
minValue="18" maxValue="50" domain="int"/>
</mx:Application>