前些日子要用到一个到时间的检验,flex自带的只能检验yyyy-mm-dd的格式,呵呵,后来发现可以照的库里的自己写
public class TimeValidator extends Validator {
private static const errorFormat:String = "日期格式错误!,正确的格式是 HH24:mm:ss";
private static const errorHHValue:String = "小时的范围是 0-23!";
private static const errorMMValue:String = "分钟的范围是 0-59!";
private static const errorSSValue:String = "秒的范围是 0-59!";
public function TimeValidator() {
super();
}
override protected function doValidation(value:Object):Array {
var val:String = value ? String(value) : "";
// Return if there are errors
// or if the required property is set to false and length is 0.
return TimeValidator.validateTime(this, val, null);
}
public static function validateTime(validator:TimeValidator, value:Object, baseField:String = null):Array {
var results:Array = [];
// Resource-backed properties of the validator.
var regexp:RegExp = / \d{1,2}:\d{1,2}:\d{1,2}/x;
var val:String = value != null ? String(value) : "";
if (!regexp.test(val)) {
results.push(new ValidationResult(true, baseField, null, TimeValidator.errorFormat));
return results;
}
var t:Array = val.split(":");
var hh:int = int(t.shift());
var mm:int = int(t.shift());
var ss:int = int(t.shift());
if (hh < 0 || hh > 23) {
results.push(new ValidationResult(true, baseField, null, TimeValidator.errorHHValue));
return results;
}
if (mm < 0 || mm > 59) {
results.push(new ValidationResult(true, baseField, null, TimeValidator.errorMMValue));
return results;
}
if (ss < 0 || ss > 59) {
results.push(new ValidationResult(true, baseField, null, TimeValidator.errorSSValue));
return results;
}
return results;
}
}
分享到:
相关推荐
总的来说,FLEX自定义的日历组件带有日志记录功能,为开发者提供了一种强大且灵活的方式来处理日期选择,并能有效地监控应用的运行状态。通过深入理解这些组件和日志机制,开发者可以创建出更加用户友好且健壮的RIA...
IDEA作为一款强大的Java集成开发环境,提供了丰富的插件来扩展其功能,其中“高度自定义代码生成idea插件”就是针对Mybatis-Flex框架的一个优秀工具。这款插件旨在帮助开发者更高效地生成代码,减少重复劳动,从而...
3. **配置脚本**:如`configure`,这是一个自动化脚本,用于检测系统环境并创建合适的Makefile来编译Flex。 4. **Makefile**:用于编译和安装Flex的Makefile模板,用户可以通过执行`make`命令来编译和安装软件。 5...
7. **状态管理**:为了管理图片的显示状态(如当前显示的图片索引),我们可以使用Flex的状态管理机制,或者自定义数据结构来跟踪当前的显示位置。 8. **响应式设计**:为了适应不同屏幕尺寸和设备,图片墙应具备...
3. **自定义界面**:通过styles和skins,开发者可以定制应用程序的外观,包括颜色、字体、边框等,使应用更具个性化。 4. **编写事件处理代码**:添加事件监听器和脚本,控制应用程序的行为。例如,当用户点击按钮...
Flex是一种强大的技术,主要用于创建富...记住,实践是检验知识的最好方式,不断尝试、调试和优化,你将在Flex开发领域越来越熟练。同时,不要忘记利用网络资源,搜索更多相关资料和解决方案,以拓宽你的视野和技能。
FLEX 项目允许用户自定义命名空间。在 application 标签中,可以定义一个新的命名空间,例如“components”。这个自定义命名空间可以被命名为任何你想要的名称,并可以包含自定义组件库。 7. FLEX 项目的开发步骤 ...
这款工具对于Flex开发者来说,是一个非常实用的资源,因为它能够帮助他们直观地查看和修改Flex应用的界面风格,从而实现自定义UI设计。下面将详细阐述Flex2StyleExplorer的核心功能、工作原理以及它在Flex开发过程中...
8. **性能优化**:Flex Builder 3提供了性能分析工具,帮助开发者检测和优化应用程序的运行效率,如内存使用情况、渲染速度等。 9. **文档与帮助**:Adobe提供的丰富在线文档和社区资源,为开发者解答疑问、学习新...
9. **样式和皮肤**:Flex允许自定义组件的外观和感觉,通过CSS或直接在MXML中设置样式属性,可以改变组件的颜色、字体、边框等,以实现个性化的界面设计。 10. **调试和测试**:Flex Builder(现为Flash Builder)...
- 将生成的`lexer.c`和`parser.c`与用户自定义的辅助函数和主程序代码一起编译进同一个项目。 - 确保链接到`libfl`(Flex库)和`liby`(Bison库)。 4. **运行程序**: - 输入待解析的文本,程序将进行词法分析...
1. **组件设计**:自定义组件的创建,包括扩展现有组件、皮肤化和行为设计。 2. **数据服务**:使用AMF(Action Message Format)进行数据交换,与服务器端的Web服务(如PHP、Java或.NET)进行通信。 3. **高级动画...
这项技术的核心是通过检测、定位、识别图像中的人脸,进而实现各种功能,如人脸比对、表情分析、年龄性别识别等。在日本开发的这个AS(ActionScript)人脸识别项目中,提供了示例代码,让开发者可以直观地了解和学习...
综上所述,这个Flex项目通过自定义控件实现了图片的旋转、缩放和拖动特效,充分利用了Flex提供的显示对象、矩阵变换和事件处理机制。开发者可以轻松地将其集成到自己的应用中,为用户提供丰富的交互体验。在实际开发...
以上就是Flex中检测Alert控件是否closed的方法。通过监听`close`事件,我们可以知道用户何时对Alert做出了响应,进而执行相应的后续处理。这个技巧在需要等待用户输入或确认的情况下非常有用。在实际项目中,你可能...
- **playerProductInstall.swf**:这是一个Flash Player检测和安装组件,确保用户的浏览器可以运行Flex应用。 - **history**:这个文件可能是教程中关于Flex开发历史的部分,或者记录了学习者的浏览历史。 通过这个...
由于Flex支持自定义组件,因此开发者可以根据实际需求扩展设计器的功能,添加新的节点类型或定制交互效果。同时,由于Flex使用ActionScript编程语言,具备良好的性能和跨平台特性,使得流程设计器可以在多种浏览器和...
实践是检验理论的最好方式,通过阅读和运行这些代码,你将对Flex有更深入的理解,并能更好地应用于实际开发工作中。记得在学习过程中,不仅要关注代码的实现,还要思考为什么要这样实现,以及如何优化和改进。这样,...
它能够处理浏览器兼容性问题,动态加载SWF文件(Flex生成的可执行文件),并提供检测Flash Player版本的功能。 综上所述,本项目涉及了使用Flex开发Web图表的基本知识,包括各种图表类型的创建、数据绑定、前端与...
在Flex 4.0中,开发者可以利用这些API来检测并安装应用程序的更新,提供用户友好的更新体验。这包括检查更新服务器上的最新版本、下载更新包、并在后台静默安装或引导用户完成安装过程。这样的功能对于保持应用程序...