textinput restrict(正则表达式,约束,限定)

通常要对输入TextInput中的数据进行验证,如:年龄等,如果避免这些简单的验证,而只需限制用户输入呢?下面我写了一个例子,也就是通过TextInput自带的restrict属性,实现的效果如下:

实现的代码如下:

Java代码 复制代码
  1. <?xml version="1.0" encoding="utf-8"?>     
  2.  <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" fontSize="12">     
  3.       
  4.      <mx:Label x="540.5" y="57" text="flex TextInput restrict(正则表达式,约束,限定)" fontWeight="bold"/>     
  5.      <mx:Text x="476.5" y="112" text="Flex中TextInput的一个比较有用的属性restrict(约束,限定),看下面例子:    "/>     
  6.              
  7.         <mx:Label x="476.5" y="156" text="1、"/>     
  8.         <mx:TextInput id="test1" width="160" maxChars="20" restrict="0-9" text="0" x="509.5" y="154"/>     
  9.        <mx:Text x="509" y="186" text="这个输入框最多只能输入20个字符,只能输入0到9之间的数字了,你如果输入别的是输入不进去的" color="#FF0000"/>     
  10.             
  11.        <mx:Label x="476.5" y="216" text="2、"/>     
  12.        <mx:TextInput id="test2" width="160" maxChars="20" restrict="0-9\." text="0" x="509.5" y="214"/>      
  13.        <mx:Text x="509.5" y="246" text="输入框可以输入0到9之间的数字,以及输入'.',中间必须用'\'分隔开来" color="#FF0000"/>     
  14.             
  15.        <mx:Label x="476.5" y="276" text="3、"/>     
  16.        <mx:TextInput id="test3" width="160" restrict="0-9\ab" text="0" x="509" y="274"/>     
  17.        <mx:Text x="509.5" y="306" text="输入框可以输入0到9之间的数字,以及a,或b" color="#FF0000"/>     
  18.             
  19.        <mx:Label x="476.5" y="336" text="4、"/>     
  20.        <mx:TextInput id="test4" width="160" restrict="a-z" text="0" y="334" x="509"/>      
  21.        <mx:Text x="509" y="366" text="可以输入a到z之间任何一个英文字母,'-'表示区间,如果要输入'-',就必须加'\',如\-" color="#FF0000"/>     
  22.             
  23.             
  24.        <mx:Text x="242" y="422" text="结论:      
  25.    用restrict有个好处,就是省去了验证的麻烦,比如检验是否为数字,如果加了restrict="0-9",就不需要检验了,因为这个输入框只能输入09之间的数字,别的输不进去"/>     
  26.         
  27.    </mx:Application>    
<?xml version="1.0" encoding="utf-8"?>  
 <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" fontSize="12">  
   
     <mx:Label x="540.5" y="57" text="flex TextInput restrict(正则表达式,约束,限定)" fontWeight="bold"/>  
     <mx:Text x="476.5" y="112" text="Flex中TextInput的一个比较有用的属性restrict(约束,限定),看下面例子:    "/>  
          
        <mx:Label x="476.5" y="156" text="1、"/>  
        <mx:TextInput id="test1" width="160" maxChars="20" restrict="0-9" text="0" x="509.5" y="154"/>  
       <mx:Text x="509" y="186" text="这个输入框最多只能输入20个字符,只能输入0到9之间的数字了,你如果输入别的是输入不进去的" color="#FF0000"/>  
         
       <mx:Label x="476.5" y="216" text="2、"/>  
       <mx:TextInput id="test2" width="160" maxChars="20" restrict="0-9\." text="0" x="509.5" y="214"/>   
       <mx:Text x="509.5" y="246" text="输入框可以输入0到9之间的数字,以及输入'.',中间必须用'\'分隔开来" color="#FF0000"/>  
         
       <mx:Label x="476.5" y="276" text="3、"/>  
       <mx:TextInput id="test3" width="160" restrict="0-9\ab" text="0" x="509" y="274"/>  
       <mx:Text x="509.5" y="306" text="输入框可以输入0到9之间的数字,以及a,或b" color="#FF0000"/>  
         
       <mx:Label x="476.5" y="336" text="4、"/>  
       <mx:TextInput id="test4" width="160" restrict="a-z" text="0" y="334" x="509"/>   
       <mx:Text x="509" y="366" text="可以输入a到z之间任何一个英文字母,'-'表示区间,如果要输入'-',就必须加'\',如\-" color="#FF0000"/>  
         
         
       <mx:Text x="242" y="422" text="结论:   
   用restrict有个好处,就是省去了验证的麻烦,比如检验是否为数字,如果加了restrict="0-9",就不需要检验了,因为这个输入框只能输入0到9之间的数字,别的输不进去"/>  
     
   </mx:Application>  

 

说白了就是在restrict中输入正则表达式进行输入的限制,只要掌握了正则表达的编写就可以实现简单的输入限制,避免了输入的严重

你可能感兴趣的:(xml,正则表达式,Flex,Adobe)