Flex中TextInput組件設置限制某些字符的輸入的方法
更新時間:2014年01月09日 17:20:59 作者:
TextInput組件設置限制輸入例如限制某個字符的輸入、設置只能輸入某些字符等等,下面是具體的示例,喜歡的朋友可以參考下
1. 限制某個字符的輸入,用符號 ^ 跟上要限制的字符,可跟多個字符
<!-- 限制字符"~"的輸入 -->
<mx:TextInput id="xxx" restrict="^~" />
<!-- 限制字符"ab"的輸入 -->
<mx:TextInput id="xxx" restrict="^ab" />
2. 設置只能輸入某些字符,將允許輸入的字符羅列出來即可,也可以用 - 組合表示字符范圍
<!-- 只能輸入abc -->
<mx:TextInput id="xxx" restrict="abc" />
<!-- 只能輸入小寫字母 -->
<mx:TextInput id="xxx" restrict="a-z" />
<!-- 只能輸入小寫字母、大寫字母和數(shù)字 -->
<mx:TextInput id="xxx" restrict="a-zA-Z0-9" />
3. 組合使用
<!-- 只能輸入數(shù)字和點號"." -->
<mx:TextInput id="xxx" restrict="0-9\." />
<!-- 只允許輸入數(shù)字和-+號"." -->
<mx:TextInput id="xxx" restrict="0-9\+\-" />
<!-- 只能輸入除ab之外的小寫字母 -->
<mx:TextInput id="xxx" restrict="a-z^ab" />
<!-- 只允許輸入數(shù)字、英文、漢字 -->
<mx:TextInput id="xxx" restrict="0-9\a-z\^{'[\u4e00-\u9fa5]'}" />
二: FONT color=#108ac6>flex TextInput restrict(正則表達式,約束,限定)
Flex中TextInput的一個比較有用的屬性restrict(約束,限定),看下面例子:
1,<mx:TextInput id="test_ti" width="160" maxChars="20" restrict="0-9" text="0"/>
這樣,這個輸入框最多只能輸入20個字符,只能輸入0到9之間的數(shù)字了,你如果輸入別的是輸入不進去的
2,<mx:TextInput id="test_ti" width="160" maxChars="20" restrict="0-9\." text="0"/>
這樣,輸入框可以輸入0到9之間的數(shù)字,以及輸入'.',中間必須用'\'分隔開來
3,<mx:TextInput id="test_ti" width="160" restrict="0-9\ab" text="0"/>
這樣,輸入框可以輸入0到9之間的數(shù)字,以及a,或b
4,<mx:TextInput id="test_ti" width="160" restrict="a-z" text="0"/>
可以輸入a到z之間任何一個英文字母,'-'表示區(qū)間,如果要輸入'-',就必須加'\',如\-
結(jié)論:
用restrict有個好處,就是省去了驗證的麻煩,比如檢驗是否為數(shù)字,如果加了restrict="0-9",就不需要檢驗了,因為這個輸入框只能輸入0到9之間的數(shù)字,別的輸不進去
詳細的列子請看:http://blog.minidx.com/2008/05/16/851.html
三:<mx:TextInput id="userName" maxChars="4" restrict="a-zA-Z0-9" />
restrict 用法:
TextField.restrict = "此處為可輸入的內(nèi)容";
field.restrict = "^此處為禁止輸入的內(nèi)容";
restrict屬性支持一些類似正則表達式的樣式:
field.restrict = "a-zA-z"; //只允許大小字母
field.restrict = "a-zA-z "; //只允許字母和空格
field.restrict = "0-9"; //只允許數(shù)字
field.restrict = "^abcdefg"; //除了小寫字母abcdefg不允許外,其它都允許
field.restrict = "^a-z"; //所有小寫字母都不允許,但是,其它內(nèi)容都允許,包括大寫字母
field.restrict = "0-9^5"; //只允許數(shù)字,但5例外
讓restrict字符包含具有特殊意義的字母(例如-和^):
field.restrict = "0-9\\-"; //允許數(shù)字和破折號
field.restrict = "0-9\\^"; //允許數(shù)字和^
field.restrict = "0-9\\\\"; //允許數(shù)字和反斜杠
你也可以使用Unicode轉(zhuǎn)義序列,指定允許的內(nèi)容.例如:
field.restrict = "^\";
注意:ActionScript有區(qū)分大小寫的,如果restrict屬性設為abc,允許字母的大寫形式(A,B和C)輸入時會變成小寫對待形式(a,b和c),反之亦然.restrict屬性只影響用戶可以輸入的內(nèi)容,腳本可將任何文本放入文本字段中.
補充:
另外可以追加限制輸入的字符數(shù),設置maxChars屬性即可
<s:TextInput id="textinput_test" restrict="0-9\-\+" maxChars="4"/>
<!-- 限制字符"~"的輸入 -->
<mx:TextInput id="xxx" restrict="^~" />
<!-- 限制字符"ab"的輸入 -->
<mx:TextInput id="xxx" restrict="^ab" />
2. 設置只能輸入某些字符,將允許輸入的字符羅列出來即可,也可以用 - 組合表示字符范圍
<!-- 只能輸入abc -->
<mx:TextInput id="xxx" restrict="abc" />
<!-- 只能輸入小寫字母 -->
<mx:TextInput id="xxx" restrict="a-z" />
<!-- 只能輸入小寫字母、大寫字母和數(shù)字 -->
<mx:TextInput id="xxx" restrict="a-zA-Z0-9" />
3. 組合使用
<!-- 只能輸入數(shù)字和點號"." -->
<mx:TextInput id="xxx" restrict="0-9\." />
<!-- 只允許輸入數(shù)字和-+號"." -->
<mx:TextInput id="xxx" restrict="0-9\+\-" />
<!-- 只能輸入除ab之外的小寫字母 -->
<mx:TextInput id="xxx" restrict="a-z^ab" />
<!-- 只允許輸入數(shù)字、英文、漢字 -->
<mx:TextInput id="xxx" restrict="0-9\a-z\^{'[\u4e00-\u9fa5]'}" />
二: FONT color=#108ac6>flex TextInput restrict(正則表達式,約束,限定)
Flex中TextInput的一個比較有用的屬性restrict(約束,限定),看下面例子:
1,<mx:TextInput id="test_ti" width="160" maxChars="20" restrict="0-9" text="0"/>
這樣,這個輸入框最多只能輸入20個字符,只能輸入0到9之間的數(shù)字了,你如果輸入別的是輸入不進去的
2,<mx:TextInput id="test_ti" width="160" maxChars="20" restrict="0-9\." text="0"/>
這樣,輸入框可以輸入0到9之間的數(shù)字,以及輸入'.',中間必須用'\'分隔開來
3,<mx:TextInput id="test_ti" width="160" restrict="0-9\ab" text="0"/>
這樣,輸入框可以輸入0到9之間的數(shù)字,以及a,或b
4,<mx:TextInput id="test_ti" width="160" restrict="a-z" text="0"/>
可以輸入a到z之間任何一個英文字母,'-'表示區(qū)間,如果要輸入'-',就必須加'\',如\-
結(jié)論:
用restrict有個好處,就是省去了驗證的麻煩,比如檢驗是否為數(shù)字,如果加了restrict="0-9",就不需要檢驗了,因為這個輸入框只能輸入0到9之間的數(shù)字,別的輸不進去
詳細的列子請看:http://blog.minidx.com/2008/05/16/851.html
三:<mx:TextInput id="userName" maxChars="4" restrict="a-zA-Z0-9" />
restrict 用法:
TextField.restrict = "此處為可輸入的內(nèi)容";
field.restrict = "^此處為禁止輸入的內(nèi)容";
restrict屬性支持一些類似正則表達式的樣式:
field.restrict = "a-zA-z"; //只允許大小字母
field.restrict = "a-zA-z "; //只允許字母和空格
field.restrict = "0-9"; //只允許數(shù)字
field.restrict = "^abcdefg"; //除了小寫字母abcdefg不允許外,其它都允許
field.restrict = "^a-z"; //所有小寫字母都不允許,但是,其它內(nèi)容都允許,包括大寫字母
field.restrict = "0-9^5"; //只允許數(shù)字,但5例外
讓restrict字符包含具有特殊意義的字母(例如-和^):
field.restrict = "0-9\\-"; //允許數(shù)字和破折號
field.restrict = "0-9\\^"; //允許數(shù)字和^
field.restrict = "0-9\\\\"; //允許數(shù)字和反斜杠
你也可以使用Unicode轉(zhuǎn)義序列,指定允許的內(nèi)容.例如:
field.restrict = "^\";
注意:ActionScript有區(qū)分大小寫的,如果restrict屬性設為abc,允許字母的大寫形式(A,B和C)輸入時會變成小寫對待形式(a,b和c),反之亦然.restrict屬性只影響用戶可以輸入的內(nèi)容,腳本可將任何文本放入文本字段中.
補充:
另外可以追加限制輸入的字符數(shù),設置maxChars屬性即可
<s:TextInput id="textinput_test" restrict="0-9\-\+" maxChars="4"/>
相關文章
flex chrome瀏覽器調(diào)試出現(xiàn)空白的解決方法
flex瀏覽器調(diào)試出現(xiàn)空白,原因是谷歌有個默認的flash播放器,只要將默認的播放器禁用,留下新安裝的插件,就OK了2014-02-02flex中使用css樣式修改TextArea滾動條的皮膚代碼
使用css樣式修改TextArea滾動條的皮膚,具體示例代碼如下,感興趣的朋友可以參考下,希望對大家有所幫助2013-08-08Flex 錯誤(mx.messaging.messages::RemotingMessage)分析
有時我們在做項目的時候會遇到Flex 錯誤提示mx.messaging.messages::RemotingMessage,那么產(chǎn)生這個錯誤的原因是什么呢,今天我們來分析下2014-06-06flex打印操作(FlexPrintJob)還有分頁打印操作具體實現(xiàn)
如果要使用分頁效果,則必須使用標簽"PrintAdvancedDataGrid"(Flex3中的標簽)才能夠?qū)崿F(xiàn)分頁效果,感興趣的朋友可以參考下2013-04-04