首页 > 代码库 > Flex控制用户可输入到文本字段中的字符集
Flex控制用户可输入到文本字段中的字符集
指示用户可以输入到控件的字符集。如果 restrict
属性的值为 null
,则可以输入任何字符。如果 restrict
属性的值为空字符串,则不能输入任何字符。此属性只限制用户交互;脚本可以将任何文本放入文本字段中。如果 restrict
属性的值为字符串,则只能在文本字段中输入该字符串中的字符。
Flex 按从左到右的顺序浏览字符串。可以使用连字符 (-) 指定一个范围。如果字符串以尖号 (^) 开头,则先接受所有字符,然后从接受字符集中排除字符串中 ^ 之后的字符。如果字符串不以尖号 (^) 开头,则最初不接受任何字符,然后将字符串中的字符包括在接受字符集中。
由于某些字符在 restrict
属性中使用时具有特殊的意义,因此必须使用反斜杠字符指定文本字符 -、^ 和 \。将 restrict
属性用作 MXML 标签中的属性时,请使用单一反斜杠,如下例所示:\^\-\\。当您在 ActionScript 表达式中设置 restrict
时,请使用两个反斜杠,如下例所示:\\^\\-\\\。
默认值为 null。
http://help.adobe.com/zh_CN/FlashPlatform/reference/actionscript/3/flash/text/TextField.html#restrict
表示用户可输入到文本字段中的字符集。如果 restrict
属性的值为 null
,则可以输入任何字符。如果 restrict
属性的值为空字符串,则不能输入任何字符。如果 restrict
属性的值为一串字符,则只能在文本字段中输入该字符串中的字符。从左向右扫描该字符串。可以使用连字符 (-) 指定一个范围。只限制用户交互;脚本可将任何文本放入文本字段中。此属性不与属性检查器中的“嵌入字体”选项同步。
如果字符串以尖号 (^) 开头,则先接受所有字符,然后从接受字符集中排除字符串中 ^ 之后的字符。如果字符串不以尖号 (^) 开头,则最初不接受任何字符,然后将字符串中的字符包括在接受字符集中。
下例仅允许在文本字段中输入大写字符、空格和数字:
my_txt.restrict = "A-Z 0-9";
下例包含除小写字母之外的所有字符:
my_txt.restrict = "^a-z";
可以使用反斜杠输入 ^ 或 - 的本义。认可的反斜杠序列为 \-、\^ 或 \\。反斜杠在字符串中必须是一个本义字符,因此在 ActionScript 中指定时必须使用两个反斜杠。例如,下面的代码只包含短划线 (-) 和尖号 (^):
my_txt.restrict = "\\-\\^";
可在字符串中的任何位置使用 ^,以在包含字符与排除字符之间进行切换。下面的代码只包含除大写字母 Q 之外的大写字母:
my_txt.restrict = "A-Z^Q";
可以使用 \u
转义序列构造 restrict
字符串。下面的代码只包含从 ASCII 32(空格)到 ASCII 126(代字号)之间的字符。
my_txt.restrict = "\u0020-\u007E";
默认值为 null。