0

我想遍历一个对象的验证器。验证器必须在声明标签中声明。一个人如何滚动声明?如果不能,除了滚动浏览对象的所有属性之外,是否有更好的定位所有验证器?

4

2 回答 2

2

只需将验证器放在一个集合中(例如一个数组)。之后,您可以简单地遍历集合的项目。

<fx:Declarations>
    <fx:Array id="validators">
        <mx:StringValidator source="{firstnameInput}" property="text" required="true" />
        <mx:StringValidator source="{lastnameInput}" property="text" required="true" />
        <mx:EmailValidator source="{emailInput}" property="text" required="true" />
        <mx:DateValidator source="{dateInput}" property="text" required="false" />
    </fx:Array>
</fx:Declarations>

然后你可以简单地使用'validateAll()':

Validator.validateAll(validators);

或循环验证器:

for each (var validator:Validator in validators) { ... }
于 2012-04-04T09:31:50.310 回答
1

我不确定我是否正确理解了您的问题,但如果您想遍历一个类的所有属性(包括元标记),您可以使用describeType

要包含元标记,请确保您已keep-as3-metadata正确设置适当的编译器选项。

于 2012-04-04T06:34:32.200 回答