パッケージ | mx.validators |
クラス | public class CreditCardValidator |
継承 | CreditCardValidator Validator EventDispatcher Object |
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
CreditCardValidator への入力を次の 2 通りの方法で行うことができます。
-
cardNumberSource
プロパティおよびcardNumberProperty
プロパティを使用してクレジットカード番号の位置を指定し、cardTypeSource
プロパティおよびcardTypeProperty
プロパティを使用して検証するクレジットカードの種類の位置を指定します。 -
source
プロパティおよびproperty
プロパティを使用して単一のオブジェクトを指定します。 オブジェクトには次のフィールドが必要です。-
cardType
- 検証するクレジットカードの種類を指定します。MXML では以下の値を使用できます。
"American Express"
、"Diners Club"
、"Discover"
、"MasterCard"
、または"Visa"
。ActionScript では、静的定数として
CreditCardValidatorCardType.MASTER_CARD
、CreditCardValidatorCardType.VISA
、CreditCardValidatorCardType.AMERICAN_EXPRESS
CreditCardValidatorCardType.DISCOVER
、またはCreditCardValidatorCardType.DINERS_CLUB
を使用します。 -
cardNumber
- 検証するカードの番号を指定します。
-
検証時には、次のガイドラインが使用されます。
長さ:
- Visa:13 または 16 桁
- MasterCard:16 桁
- Discover:16 桁
- American Express:15 桁
- DinersClub:14 桁、MasterCard としても機能する場合は 16 桁
- Visa:4
- MasterCard:51 ~ 55
- Discover:6011
- American Express:34 または 37
- Diners Club:300 ~ 305、36 または 38、51 ~ 55
The <mx:CreditCardValidator>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<mx:CreditCardValidator allowedFormatChars=" -" cardNumberListener="Object specified by cardNumberSource" cardNumberProperty="No default" cardNumberSource="No default" cardTypeListener="Object specified by cardTypeSource" cardTypeProperty="No default" cardTypeSource="No default" invalidCharError= "Invalid characters in your credit card number. (Enter numbers only.)" invalidNumberError="The credit card number is invalid." noNumError="No credit card number is specified." noTypeError="No credit card type is specified or the type is not valid." wrongLengthError="Your credit card number contains the wrong number of digits." wrongTypeError="Incorrect card type is specified." />
関連する API エレメント
プロパティ | 定義元 | ||
---|---|---|---|
allowedFormatChars : String
cardNumber フィールドで使用できる書式文字のセットを表します。 | CreditCardValidator | ||
cardNumberListener : IValidatorListener
カード番号サブフィールドの検証結果をリッスンするコンポーネントを表します。 | CreditCardValidator | ||
cardNumberProperty : String
検証するカード番号プロパティの名前を表します。 | CreditCardValidator | ||
cardNumberSource : Object
カード番号フィールドの値を含むオブジェクトを表します。 | CreditCardValidator | ||
cardTypeListener : IValidatorListener
カードの種類を示すサブフィールドの検証結果をリッスンするコンポーネントを表します。 | CreditCardValidator | ||
cardTypeProperty : String
検証するカードの種類を示すプロパティの名前を表します。 | CreditCardValidator | ||
cardTypeSource : Object
カードの種類を指定するフィールドの値を含むオブジェクトを表します。 | CreditCardValidator | ||
constructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクター関数への参照です。 | Object | ||
enabled : Boolean
この値を false に設定すると、バリデーターによる検証が行えなくなります。 | Validator | ||
invalidCharError : String
cardNumber フィールドに無効な文字が含まれている場合に発生するエラーメッセージを表します。 | CreditCardValidator | ||
invalidNumberError : String
クレジットカード番号が無効になっている場合に発生するエラーメッセージを表します。 | CreditCardValidator | ||
listener : Object
検証のリスナーを指定します。 | Validator | ||
noNumError : String
cardNumber フィールドが空の場合に発生するエラーメッセージを表します。 | CreditCardValidator | ||
noTypeError : String
cardType フィールドが空の場合に発生するエラーメッセージを表します。 | CreditCardValidator | ||
property : String
検証する値を含む source オブジェクトのプロパティの名前を指定するストリングを表します。 | Validator | ||
required : Boolean = true
true の場合、検証エラーの原因となる欠損値または空値を指定します。 | Validator | ||
requiredFieldError : String
値が欠損し、required プロパティが true の場合に発生するエラーメッセージです。 | Validator | ||
source : Object
検証するプロパティを含むオブジェクトを指定します。 | Validator | ||
trigger : IEventDispatcher
バリデーターをトリガーするイベントの生成を行うコンポーネントを指定します。 | Validator | ||
triggerEvent : String
検証をトリガーするイベントを指定します。 | Validator | ||
wrongLengthError : String
指定されたクレジットカードの種類に対応していない桁数の番号が cardNumber フィールドに含まれる場合に発生するエラーメッセージを表します。 | CreditCardValidator | ||
wrongTypeError : String
cardType フィールドに無効なクレジットカードの種類が含まれる場合に発生するエラーメッセージを表します。 | CreditCardValidator |
メソッド | 定義元 | ||
---|---|---|---|
コンストラクターです。 | CreditCardValidator | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
イベントリスナーオブジェクトを EventDispatcher オブジェクトに登録し、リスナーがイベントの通知を受け取るようにします。 | EventDispatcher | ||
イベントをイベントフローに送出します。 | EventDispatcher | ||
EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。 | EventDispatcher | ||
オブジェクトに指定されたプロパティが定義されているかどうかを示します。 | Object | ||
MXML タグを使用してバリデーターを作成したときに、MXML コンパイラーによって自動的に呼び出されます。 | Validator | ||
Object クラスのインスタンスが、パラメーターとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。 | Object | ||
指定されたプロパティが存在し、列挙できるかどうかを示します。 | Object | ||
EventDispatcher オブジェクトからリスナーを削除します。 | EventDispatcher | ||
ループ処理に対するダイナミックプロパティの可用性を設定します。 | Object | ||
ロケール固有の規則に従って書式設定された、このオブジェクトのストリング表現を返します。 | Object | ||
指定されたオブジェクトのストリング表現を返します。 | Object | ||
検証を実行し、リスナーに任意で結果を通知します。 | Validator | ||
[静的]
validators 配列に含まれるすべてのバリデーターを呼び出します。 | Validator | ||
[静的]
バリデーターを呼び出す上で便利なメソッドです。 | CreditCardValidator | ||
指定されたオブジェクトのプリミティブな値を返します。 | Object | ||
指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。 | EventDispatcher |
メソッド | 定義元 | ||
---|---|---|---|
バリデーターから送出された valid イベントおよび invalid イベントのすべてのリスナーを設定します。 | Validator | ||
[オーバーライド]
クレジットカード番号の妥当性を検証する上で基本クラスの doValidation() メソッドをオーバーライドします。 | CreditCardValidator | ||
検証するオブジェクトを返します。 | Validator | ||
エラー結果の配列から ValidationResultEvent を返します。 | Validator | ||
value が null でない場合、true を返します。 | Validator | ||
バリデーターから送出された valid イベントおよび invalid イベントのすべてのリスナーを切断します。 | Validator | ||
このメソッドは、バリデーターが作成されたときと、ResourceManager が "change" イベントを送出してローカライズされたリソースが何らかの点で変更されたことを示すときに再び呼び出されます。 | Validator |
allowedFormatChars | プロパティ |
cardNumberListener | プロパティ |
cardNumberListener:IValidatorListener
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
カード番号サブフィールドの検証結果をリッスンするコンポーネントを表します。 何も指定されていない場合、cardNumberSource
プロパティに指定された値が使用されます。
実装
public function get cardNumberListener():IValidatorListener
public function set cardNumberListener(value:IValidatorListener):void
cardNumberProperty | プロパティ |
public var cardNumberProperty:String
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
検証するカード番号プロパティの名前を表します。 この属性はオプションですが、cardNumberSource
プロパティを指定する場合は、このプロパティも設定する必要があります。
cardNumberSource | プロパティ |
cardNumberSource:Object
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
カード番号フィールドの値を含むオブジェクトを表します。 このプロパティの値を指定する場合は、cardNumberProperty
プロパティにも値を指定する必要があります。 source
プロパティおよび property
プロパティを設定する場合は、このプロパティを使用しないでください。
実装
public function get cardNumberSource():Object
public function set cardNumberSource(value:Object):void
cardTypeListener | プロパティ |
cardTypeListener:IValidatorListener
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
カードの種類を示すサブフィールドの検証結果をリッスンするコンポーネントを表します。 何も指定されていない場合、cardTypeSource
プロパティに指定された値が使用されます。
実装
public function get cardTypeListener():IValidatorListener
public function set cardTypeListener(value:IValidatorListener):void
cardTypeProperty | プロパティ |
public var cardTypeProperty:String
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
検証するカードの種類を示すプロパティの名前を表します。 この属性はオプションですが、cardTypeSource
プロパティを指定する場合は、このプロパティも設定する必要があります。
MXML で、次の値を指定できます。
"American Express"
"Diners Club"
"Discover"
"MasterCard"
"Visa"
ActionScript では、このプロパティを設定するために次の定数を使用できます。
CreditCardValidatorCardType.AMERICAN_EXPRESS
、CreditCardValidatorCardType.DINERS_CLUB
、CreditCardValidatorCardType.DISCOVER
、CreditCardValidatorCardType.MASTER_CARD
、および CreditCardValidatorCardType.VISA
。
関連する API エレメント
cardTypeSource | プロパティ |
cardTypeSource:Object
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
カードの種類を指定するフィールドの値を含むオブジェクトを表します。 このプロパティの値を指定する場合は、cardTypeProperty
プロパティにも値を指定する必要があります。 source
プロパティおよび property
プロパティを設定する場合は、このプロパティを使用しないでください。
実装
public function get cardTypeSource():Object
public function set cardTypeSource(value:Object):void
invalidCharError | プロパティ |
invalidCharError:String
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
cardNumber
フィールドに無効な文字が含まれている場合に発生するエラーメッセージを表します。
デフォルト値: "Invalid characters in your credit card number. (Enter numbers only.)"。
実装
public function get invalidCharError():String
public function set invalidCharError(value:String):void
invalidNumberError | プロパティ |
noNumError | プロパティ |
noTypeError | プロパティ |
wrongLengthError | プロパティ |
wrongLengthError:String
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
指定されたクレジットカードの種類に対応していない桁数の番号が cardNumber
フィールドに含まれる場合に発生するエラーメッセージを表します。
デフォルト値: "Your credit card number contains the wrong number of digits."。
実装
public function get wrongLengthError():String
public function set wrongLengthError(value:String):void
wrongTypeError | プロパティ |
wrongTypeError:String
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
cardType
フィールドに無効なクレジットカードの種類が含まれる場合に発生するエラーメッセージを表します。 cardType
フィールドには、事前に定義した以下の定数を使用する必要があります。CreditCardValidatorCardType.MASTER_CARD
、CreditCardValidatorCardType.VISA
、CreditCardValidatorCardType.AMERICAN_EXPRESS
、CreditCardValidatorCardType.DISCOVER
、または CreditCardValidatorCardType.DINERS_CLUB
。
デフォルト値: "Incorrect card type is specified."。
実装
public function get wrongTypeError():String
public function set wrongTypeError(value:String):void
CreditCardValidator | () | コンストラクター |
public function CreditCardValidator()
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
コンストラクターです。
doValidation | () | メソッド |
override protected function doValidation(value:Object):Array
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
クレジットカード番号の妥当性を検証する上で基本クラスの doValidation()
メソッドをオーバーライドします。
このメソッドはユーザーが直接呼び出すものではなく、妥当性を検証する際に Flex から呼び出されます。 Validator クラスをカスタムで作成する場合は、このメソッドを実装する必要があります。
パラメーター
value:Object — 検証するオブジェクトです。
|
Array — ValidationResult オブジェクトの配列です。このオブジェクトは、検証が行われるフィールドごとに 1 つ含まれます。
|
validateCreditCard | () | メソッド |
public static function validateCreditCard(validator:CreditCardValidator, value:Object, baseField:String):Array
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
バリデーターを呼び出す上で便利なメソッドです。 他の標準 Flex バリデーターにもそれぞれ同様の便利なメソッドがあります。
パラメーター
validator:CreditCardValidator — CreditCardValidator インスタンスを表します。
| |
value:Object — 検証するフィールドであり、その次のフィールドを含む必要があります。
| |
baseField:String — value パラメーターで指定したサブフィールドのテキストの型を表します。 例えば、value パラメーターで value.date を指定する場合、baseField の値は "date" です。
|
Array — ValidationResult オブジェクトの配列です。このオブジェクトは、検証が行われるフィールドごとに 1 つ含まれます。
|
関連する API エレメント
<?xml version="1.0" encoding="utf-8"?> <!-- Simple example to demonstrate the CreditCardValidator. --> <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> <!-- Define model for the credit card data. --> <fx:Model id="creditcard"> <card> <cardType>{cardTypeCombo.selectedItem.data}</cardType> <cardNumber>{cardNumberInput.text}</cardNumber> </card> </fx:Model> <mx:CreditCardValidator id="ccV" cardTypeSource="{creditcard}" cardTypeProperty="cardType" cardNumberSource="{creditcard}" cardNumberProperty="cardNumber" trigger="{myButton}" triggerEvent="click" cardTypeListener="{cardTypeCombo}" cardNumberListener="{cardNumberInput}" valid="Alert.show('Validation Succeeded!');"/> </fx:Declarations> <s:Panel title="CreditCardValidator Example" width="75%" height="75%" horizontalCenter="0" verticalCenter="0"> <mx:Form id="creditCardForm" left="10" right="10" top="10" bottom="10"> <mx:FormItem label="Card Type"> <mx:ComboBox id="cardTypeCombo"> <mx:dataProvider> <fx:Object label="American Express" data="American Express"/> <fx:Object label="Diners Club" data="Diners Club"/> <fx:Object label="Discover" data="Discover"/> <fx:Object label="MasterCard" data="MasterCard"/> <fx:Object label="Visa" data="Visa"/> </mx:dataProvider> </mx:ComboBox> </mx:FormItem> <mx:FormItem label="Credit Card Number"> <s:TextInput id="cardNumberInput"/> </mx:FormItem> <mx:FormItem> <s:Button id="myButton" label="Check Credit"/> </mx:FormItem> </mx:Form> </s:Panel> </s:Application>
Tue Jun 12 2018, 10:34 AM Z