Flex驗證組件如何實現Flex驗證處理
本文向大家簡單介紹一下Flex驗證組件的概念,驗證失敗時需要做錯誤的提示及處理,修改錯誤提示的方法是修改Flex驗證組件中相應的錯誤類型屬性。
Flex驗證處理
驗證失敗時需要做錯誤的提示及處理。Flex驗證組件中提供了豐富的錯誤類型,只是這些錯誤類型的提示是英文的,用戶可能需要改變提示。修改錯誤提示的方法是修改Flex驗證組件中相應的錯誤類型屬性。例PhoneNumberValidator組件中的wrongLengthError屬性表示長度錯誤提示。
用戶可根據需要修改相應的出錯信息。其語法如下所示。
- <Flex驗證組件錯誤類型屬性="自定義錯誤提示"/>
例:
- //引用ValidationResultEvent類
- importmx.events.ValidationResultEvent;
- privatefunctioncheckHandle():void//驗證處理函數
- {
- if(emailV.validate().type==ValidationResultEvent.VALID)
- {
- Alert.show("電子郵件驗證成功");//提示"驗證成功"
- }
- }
- <!--按鈕組件,用于驗證處理-->
- <mx:Buttonidmx:Buttonid="mySubmit"label="驗證"click="checkHandle();"/>
注:
If(Flex驗證組件id.validate().type==ValidationResultEvent.VALID)
ValidationResultEvent類包含于“mx.events.*”中,是驗證結果事件類。其中,INVALID值表示驗證失敗,VALID值表示驗證成功。
Validator還有一個listen屬性,它用來指定檢測的錯誤信息顯示在哪個組件上。例:
- <?xmlversionxmlversion="1.0"encoding="utf-8"?>
- <mx:Applicationxmlns:mxmx:Applicationxmlns:mx=http://www.adobe.com/2006/mxml
- layout="vertical"fontSize="12"width="300"height="200">
- <mx:Validatoridmx:Validatorid="nameV"source="{nameTI}"property="text"
- requiredFieldError="必須輸入姓名!"
- trigger="{btn}"triggerEvent="click"/>
- <mx:Validatoridmx:Validatorid="ageV"source="{ageTI}"property="text"
- requiredFieldError="必須輸入年齡!"
- trigger="{btn}"triggerEvent="click"/>
- <mx:Validatoridmx:Validatorid="sexV"source="{sexRBG}"property="selectedValue"
- requiredFieldError="必須選擇性別!"
- trigger="{btn}"triggerEvent="click"
- listener="{maleRB}"/>
- <mx:FormItemlabelmx:FormItemlabel="姓名:"width="150">
- <mx:TextInputidmx:TextInputid="nameTI"/>
- </mx:FormItem>
- <mx:FormItemlabelmx:FormItemlabel="年齡:"width="150">
- <mx:TextInputidmx:TextInputid="ageTI"/>
- </mx:FormItem>
- <mx:FormItemlabelmx:FormItemlabel="性別:"direction="horizontal"width="150">
- <mx:RadioButtonGroupidmx:RadioButtonGroupid="sexRBG"/>
- <mx:RadioButtonidmx:RadioButtonid="maleRB"groupName="sexRBG"label="男"value="1"/>
- <mx:RadioButtonidmx:RadioButtonid="femaleRB"groupName="sexRBG"label="女"value="0"/>
- </mx:FormItem>
- <mx:Buttonidmx:Buttonid="btn"label="提交"/>
- </mx:Application>
對于性別的選擇,由于檢測兩個RadioButton比較麻煩,采用了檢測RadioButtonGroup的selectedValue屬性的方法,如果這個屬性為空,就說明兩個RadioButton都沒有選擇。但RadioButtonGroup并不是一個可視Flex驗證組件,檢測的錯誤信息無法顯示出來,所以這里就使用了listen屬性將顯示信息轉到maleRB組件上進行顯示了。
【編輯推薦】