1. 限制某個(gè)字符的輸入,用符號(hào) ^ 跟上要限制的字符,可跟多個(gè)字符
<!-- 限制字符"~"的輸入 -->
<mx:TextInput id="xxx" restrict="^~" />
<!-- 限制字符"ab"的輸入 -->
<mx:TextInput id="xxx" restrict="^ab" />
2. 設(shè)置只能輸入某些字符,將允許輸入的字符羅列出來即可,也可以用 - 組合表示字符范圍
<!-- 只能輸入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ù)字和點(diǎn)號(hào)"." -->
<mx:TextInput id="xxx" restrict="0-9/." />
<!-- 只允許輸入數(shù)字和-+號(hào)"." -->
<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(正則表達(dá)式,約束,限定)
Flex中TextInput的一個(gè)比較有用的屬性restrict(約束,限定),看下面例子:
1,<mx:TextInput id="test_ti" width="160" maxChars="20" restrict="0-9" text="0"/>
這樣,這個(gè)輸入框最多只能輸入20個(gè)字符,只能輸入0到9之間的數(shù)字了,你如果輸入別的是輸入不進(jìn)去的
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之間任何一個(gè)英文字母,'-'表示區(qū)間,如果要輸入'-',就必須加'/',如/-
結(jié)論:
用restrict有個(gè)好處,就是省去了驗(yàn)證的麻煩,比如檢驗(yàn)是否為數(shù)字,如果加了restrict="0-9",就不需要檢驗(yàn)了,因?yàn)檫@個(gè)輸入框只能輸入0到9之間的數(shù)字,別的輸不進(jìn)去
詳細(xì)的列子請看: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屬性支持一些類似正則表達(dá)式的樣式:
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ù)字和破折號(hào)
field.restrict = "0-9//^"; //允許數(shù)字和^
field.restrict = "0-9////"; //允許數(shù)字和反斜杠
你也可以使用Unicode轉(zhuǎn)義序列,指定允許的內(nèi)容.例如:
field.restrict = "^/";
注意:ActionScript有區(qū)分大小寫的,如果restrict屬性設(shè)為abc,允許字母的大寫形式(A,B和C)輸入時(shí)會(huì)變成小寫對(duì)待形式(a,b和c),反之亦然.restrict屬性只影響用戶可以輸入的內(nèi)容,腳本可將任何文本放入文本字段中.
補(bǔ)充:
另外可以追加限制輸入的字符數(shù),設(shè)置maxChars屬性即可
<s:TextInput id="textinput_test" restrict="0-9/-/+" maxChars="4"/>