【发布时间】:2009-07-13 17:44:08
【问题描述】:
我创建了一个自定义 textInput 组件,它使用私有验证器处理它自己的验证。根据组件的状态启用验证,即当组件状态为“编辑”时启用验证。
但是,当状态从编辑更改时,内部验证器设置为未启用,但文本框上的验证错误不清除 - textInput 仍然有红色边框,并且在鼠标悬停时出现验证错误。我想要发生的是,当禁用验证器时,错误格式和错误消息会从文本输入控件中清除。
有谁知道如何做到这一点我尝试将内部验证器实例设置为 enabled = false 并按如下方式调度一个新的 focusOutEvent 但验证错误格式仍应用于 textInput 控件。
_validatorInstance.enabled = false;
//clear the validation errors if any
dispatchEvent(new FocusEvent(FocusEvent.FOCUS_OUT));
有什么想法吗?
谢谢
乔恩
【问题讨论】:
-
这不是答案,而是评论,如果 myField.errorString = "";是使用验证器时清除错误的最佳方法,我可以跳过使用验证器,自己检查条件,自己设置错误字符串并自己清除它们。必须有比手动清除错误字符串更好的方法。如果我必须编写更多代码并指定每个控件来清除它的错误字符串,那么使用验证器有什么好处?
标签: apache-flex actionscript-3 validation flex3 uicomponents