使用TextInput组件的change事件监听用户输入
这里使用的过滤方法是Array类的一部分,它让你创建一个可以载入任何一个对象的方法,然后通过计算,返回一个布尔值来指明是否这一项可以被包括在过滤后的数组里。这个临时数组在检测输入的方法中创建,它包含了匹配正则表达式的所有项。
<?xml version="1.0" encoding="utf-8"?>
<mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml"
width="400" height="300">
<mx:Script>
<![CDATA[
[Bindable]
private var probableMatches:Array;
private var allWords:Array=
["apple","aderw","boy","cat","milk","orange","pepper","truck"];
private var regexp:RegExp;
private function checkInput():void{
var i:int=0;
var temp:Array=allWords.filter(filter);//得到过滤后的数组
input.text=temp[0];//显示第一个值
}
private function filter(element:*,index:int,arr:Array):Boolean{
regexp=new RegExp(input.text);
return (regexp.test(element as String));
}
]]>
</mx:Script>
<mx:TextInput id="input" change="checkInput()"/>
</mx:Canvas>
输入a时显示applie,输入b时显示boy。。。
TextInput组件
最新推荐文章于 2024-07-16 13:20:55 发布