还是以前同时发表在
ajaxcn.org上的一片小文, 不过后来一哥们儿回了更简便的方法
因为validation.js自带的是澳大利亚日期格式验证,如果需要对中文日期(yyyy-mm-dd, yyyy/mm/dd, yyyy.mm.dd)进行验证,就需要自己进行扩展,下面就是我做的一个扩展,如有不足请大家指正!
Validation.add('validate-date-cn', 'Please use this date format: yyyy/mm/dd. For example 2006/03/17 for the 17th of March, 2006.', function(v){
/*-- 日期格式:(四位)年份 + (至多两位)月份 + (至多两位)日期 --*/
if(!/d{4}[.-/]d{1,2}[.-/]d{1,2}/.test(v))
{
return false;
} /*-- 各月的天数 --*/
var MonthDays=new Array(31,28,31,30,31,30,31,31,30,31,30,31); /*-- 提取年月日的值 --*/
var tempArray = v.split(/[.-/]/); var mYear = tempArray[0];
var mMonth = tempArray[1];
var mDay = tempArray[2]; /*-- 判断年份 --*/
if(mYear <= 0 || mYear > 9999)
{
return false;
} /*-- 判断月份 --*/
if(mMonth <= 0 || mMonth > 12)
{
return false;
} /*-- 计算所在月的正确天数 --*/
var RightDay = 0;
if(mMonth == 2)
RightDay = (((mYear%4 == 0) && (mYear%100 != 0) || (mYear%400 == 0))? 29: 28);
else
RightDay = MonthDays[mMonth-1]; /*-- 判断日 --*/
if(mDay <= 0 || mDay > RightDay)
{
return false;
} /*-- 格式和值均正确,返回真 --*/
return true;
更简单的做法:
/* 日期格式:(四位)年份 + (至多两位)月份 + (至多两位)日期 */ if(!/^(?:([0-9]{4}-(?:(?:0?[1,3-9]|1[0-2])-(?:29|30)|((?:0?[13578]|1[02])-31)))|([0-9]{4}-(?:0?[1-9]|1[0-2])-(?:0?[1-9]|1d|2[0-8]))|(((?:(dd(?:0[48]|[2468][048]|[13579][26]))|(?:0[48]00|[2468][048]00|[13579][26]00))-0?2-29)))$/.test(v)) { alert('false'); return false; }
这个是已经把闰年啊什么的都考虑进去的正则。
正则万岁哈。
分享到:
相关推荐
- **校验规则**:`FormValidation.js` 提供了一系列内置的验证规则,如非空、邮箱、手机号、日期格式等。开发者可以根据需求选择或自定义这些规则。 - **动态添加元素的校验**:在某些交互丰富的Web应用中,用户...
**jQuery FormValidation插件**是前端开发中一个广泛使用的工具,专门用于实现高效且用户友好的表单验证。这个插件基于流行的JavaScript库jQuery构建,它简化了在Web应用程序中实施复杂的验证规则的过程。在标题提到...
jQuery.validationEngine是一款强大的JavaScript插件,专用于前端表单验证。这款插件以其简洁的API、丰富的验证规则和良好的国际化支持而备受青睐。在中文环境中,它可以为用户提供友好的中文提示,确保用户输入的...
FormValidation是一款功能强大的前端表单验证框架,专为开发者提供高效、灵活的验证解决方案。它以其高度可定制性,对HTML data属性的完美支持以及内置的自定义验证器功能而备受推崇。本资源包含了FormValidation的...
**jQuery.Validation.Engine** 是一个基于JavaScript库jQuery的插件,专为网页表单验证提供强大支持。这个插件设计精美,功能丰富,可以帮助开发者轻松创建符合业务规则的表单验证,提升用户体验,确保用户输入的...
它是基于流行的JavaScript库jQuery构建的,为开发者提供了一种优雅的方式来处理用户输入的数据验证。这个插件以其高度可定制性和与AJAX的无缝集成而受到青睐,极大地提升了用户体验。 首先,我们来看一下jQuery ...
`jQuery.validate.js` 是一个非常流行的 JavaScript 库,用于对 HTML 表单进行验证。它是由 Jörn Zaefferer 创建的,并作为 jQuery 的一个插件发布。这个库简化了在网页上创建复杂的表单验证规则的过程,使得开发者...
ajax以支持ajax验证 增加validate-pattern直接通过正则表达式的认证 修改validate-equlas以验证密码与确认密码的问题 增加less-than与great-than的验证以支持开始日期与结束日期相比较的问题 增加validation之间...
客户端验证通常使用JavaScript实现,可以在用户提交表单前实时检查数据,提高用户体验,但这种方式的缺点是容易被绕过。服务器端验证则是JSF的默认验证方式,它会检查所有提交的数据,即使客户端验证失败,服务器端...
6. **日期验证**:确保日期格式正确,或不超过特定范围。 7. **自定义验证**:根据业务需求定制的验证规则,比如密码强度验证。 `form.js`通常会与HTML表单元素进行交互,通过监听事件(如`onsubmit`)来触发验证...
《jQuery validate.js 表单验证详解》 在Web开发中,表单验证是不可或缺的一环,它确保用户输入的数据符合预设的要求,提高用户体验并减少服务器端的压力。jQuery validate.js插件是实现这一功能的强大工具,它提供...
jQuery的validation插件是一款强大的表单验证工具,它基于JQuery库,使得开发者能够快速有效地实现对表单输入数据的验证。这个插件不仅提供了许多内置的验证规则,还允许自定义验证方法,同时支持多语言,极大地提高...
jQuery的validation表单验证插件是用于简化网页表单验证的工具,它基于jQuery库,提供了一种高效且可扩展的方式来验证用户输入的数据。这个插件使得开发者能够快速地实现常见输入验证,同时支持自定义验证规则和多...
"validation2.3.4" 是一个专门针对表单验证的JavaScript库,它旨在帮助开发者更轻松、高效地处理用户输入的数据验证。在Web开发中,表单验证是不可或缺的一环,确保用户提交的信息准确无误是提升用户体验和数据安全...
FormValidation是一款强大的JavaScript库,专为前端开发人员设计,用于实现高效、灵活的表单验证。这个库提供了丰富的验证规则,如电子邮件验证、电话号码验证和身份证验证,以确保用户输入的数据符合预设的格式和...
4. **正则表达式**:对于复杂的输入格式验证,如邮箱、电话号码或日期,JavaScript的`test()`方法配合正则表达式能实现强大的匹配功能。例如,邮箱验证可以使用`/^\S+@\S+\.\S+$/`这样的正则表达式。 5. **自定义...
<script src="path/to/validation-framework.min.js"> ``` ### 三、JSValidation的基本使用 创建验证规则是JSValidation的基础操作。你可以为每个表单元素指定验证规则,如下所示: ```javascript var validator ...
7. **验证工具和库**:除了上述提到的,还有许多第三方验证工具,如JSR 303/349 Bean Validation(Java),Express-validator(Node.js),WTForms(Python),ASP.NET MVC的DataAnnotations等,它们简化了验证逻辑...
1. 引入jQuery库和Validation插件的JavaScript文件,以及相应的本地化文件(如中文消息文件`messages_zh.js`)。 ```html <script type="text/javascript" src="js/jquery-1.11.0.min.js"> <script type="text/...