第四编?数据篇
2013.12.01
CH19?Flex中的数据处理
19.1?数据绑定
19.1.1?简单绑定方式
绑定数据的语法:{可绑定的属性或变量}
指明变量或属性可绑定的语法:
[bindable]
变量或属性
19.1.2?使用?<fx:binding>组件绑定
<fx:binding?source=""?destination="">
19.1.3?双向绑定
双向绑定有两种方法可以实现:通过控件的属性和<fx:binding>组件:
在需要绑定的组件的属性中,添加一个@符号,就代表了该属性的双向绑定。
设置<fx:binding>组件“twoWay”属性,可以实现双向绑定。
19.2?复杂数据的存储
19.2.1?<fx:model>组件
<fx:model>以树形结构存储数据。必须有根节点。
指向<fx:model>组件中的数据时,要跳过根节点,这与XML组件不同。
19.2.2?<fx:object>
<fx:object?属性名1=""?属性2=""?.../>
19.2.3?<fx:XML>组件
19.3?数据验证
19.3.1?数据验证组件概述
CrediCardValidator
CurrencyValidator
DateValidator
EmailValidator
NumberValidator
PhoneNumberValidator
RegExpValidator
SocialSecurityValidator
StringValidator
ZipCodeValidator
19.3.2?如何使用数据验证组件
<验证组件?source="{}"?property=""/>
19.3.3?验证触发方式
1、默认触发验证:焦点离开时验证。
2、任意动作触发验证,有两种写法:
方法一:
在验证组件中指明触发器和触发动作
<fx:验证组件类型
source="{输入源id}"
proterty="输入源的属性"
trigger="{触发器}"
triggerEvent="触发事件"
/>
方法二:代码触发
<组件?事件="验证组件.validate()"/>
19.3.4?验证失败处理
<验证组件?错误类型属性="自定义错误提示"?/>
19.3.5?自定义验证组件
19.4?数据格式化
19.4.1??格式化组件概述
CurrencyFormatter
DateFormatter
NumberFormatter
PhoneFormatter
ZipCodeFormatter
?
CH20?使用正则表达式匹配字符串数据
20.1?正则式概述
20.2?正则式的语法
20.2.1?元字符
.?匹配除换行符以外的任意字符
w?匹配字母、数字、下划线或汉字
s?匹配任意的空白字符
d?匹配数字
b?匹配单纯的开始或结束
^?匹配字符串的开始
$?匹配字符串的结束
20.2.2?转义字符
“.”、“”、“(”
20.2.3?限定符
*?重复0次或更多次
+?重复1次或更多次
??重复0次或1次
{n}?重复n次
{n,}?重复n次或更多次
{n,m}?重复n到m次
20.2.4?字符集合?[]
[0-9]?匹配一位数字
[a-z0-9A-Z]?匹配一位数字或大小写字母
20.2.5?反义
W?匹配不是字母、数字、下划线、汉字的字符
S?匹配任意不是空白符的字符
D?匹配任意非数字的字符
B?匹配不是单词开始或结束的位置
[^x]?匹配x以外的任意字符
[^aeiou]?匹配除了aeiou这几个字母以外的任意字符。
20.2.6?多规则
规则间以“|”分隔。
20.2.7?