Flex驗(yàn)證組件如何實(shí)現(xiàn)Flex驗(yàn)證處理
本文向大家簡(jiǎn)單介紹一下Flex驗(yàn)證組件的概念,驗(yàn)證失敗時(shí)需要做錯(cuò)誤的提示及處理,修改錯(cuò)誤提示的方法是修改Flex驗(yàn)證組件中相應(yīng)的錯(cuò)誤類型屬性。
Flex驗(yàn)證處理
驗(yàn)證失敗時(shí)需要做錯(cuò)誤的提示及處理。Flex驗(yàn)證組件中提供了豐富的錯(cuò)誤類型,只是這些錯(cuò)誤類型的提示是英文的,用戶可能需要改變提示。修改錯(cuò)誤提示的方法是修改Flex驗(yàn)證組件中相應(yīng)的錯(cuò)誤類型屬性。例PhoneNumberValidator組件中的wrongLengthError屬性表示長(zhǎng)度錯(cuò)誤提示。
用戶可根據(jù)需要修改相應(yīng)的出錯(cuò)信息。其語(yǔ)法如下所示。
- <Flex驗(yàn)證組件錯(cuò)誤類型屬性="自定義錯(cuò)誤提示"/>
例:
- //引用ValidationResultEvent類
- importmx.events.ValidationResultEvent;
- privatefunctioncheckHandle():void//驗(yàn)證處理函數(shù)
- {
- if(emailV.validate().type==ValidationResultEvent.VALID)
- {
- Alert.show("電子郵件驗(yàn)證成功");//提示"驗(yàn)證成功"
- }
- }
- <!--按鈕組件,用于驗(yàn)證處理-->
- <mx:Buttonidmx:Buttonid="mySubmit"label="驗(yàn)證"click="checkHandle();"/>
注:
If(Flex驗(yàn)證組件id.validate().type==ValidationResultEvent.VALID)
ValidationResultEvent類包含于“mx.events.*”中,是驗(yàn)證結(jié)果事件類。其中,INVALID值表示驗(yàn)證失敗,VALID值表示驗(yàn)證成功。
Validator還有一個(gè)listen屬性,它用來(lái)指定檢測(cè)的錯(cuò)誤信息顯示在哪個(gè)組件上。例:
- <?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>
對(duì)于性別的選擇,由于檢測(cè)兩個(gè)RadioButton比較麻煩,采用了檢測(cè)RadioButtonGroup的selectedValue屬性的方法,如果這個(gè)屬性為空,就說(shuō)明兩個(gè)RadioButton都沒(méi)有選擇。但RadioButtonGroup并不是一個(gè)可視Flex驗(yàn)證組件,檢測(cè)的錯(cuò)誤信息無(wú)法顯示出來(lái),所以這里就使用了listen屬性將顯示信息轉(zhuǎn)到maleRB組件上進(jìn)行顯示了。
【編輯推薦】
- 常用Flex驗(yàn)證控件用法指導(dǎo)
- Flex數(shù)據(jù)綁定技巧
- 學(xué)習(xí)總結(jié) 在Flex中如何嵌入Flex字體
- 揭開(kāi)Flex正則表達(dá)式的神秘面紗
- Flex數(shù)據(jù)綁定及其使用頻繁的幾種情況