`

jquery validate日期与身份证验证实例

阅读更多

[导读] jquery validate日期与身份证验证实例下面是validate的validate jsjQuery extend(jQuery validator messages, { required: "必填", remote: "请修正该字段", email: "请输入正确格式的电子邮件", url:

jquery validate日期与身份证验证实例

下面是validate的validate.js

jQuery.extend(jQuery.validator.messages, {
    required: "必填",
    remote: "请修正该字段",
    email: "请输入正确格式的电子邮件",
    url: "请输入合法的网址",
    date: "请输入合法的日期",
    dateISO: "请输入合法的日期 (ISO).",
    number: "请输入合法的数字",
    digits: "只能输入整数",
    creditcard: "请输入合法的信用卡号",
    equalTo: "请再次输入相同的值",
    accept: "请输入拥有合法后缀名的字符串",
    maxlength: jQuery.validator.format("请输入一个长度最多是 {0} 的字符串"),
    minlength: jQuery.validator.format("请输入一个长度最少是 {0} 的字符串"),
    rangelength: jQuery.validator.format("请输入一个长度介于 {0} 和 {1} 之间的字符串"),
    range: jQuery.validator.format("请输入一个介于 {0} 和 {1} 之间的值"),
    max: jQuery.validator.format("请输入一个最大为 {0} 的值"),
    min: jQuery.validator.format("请输入一个最小为 {0} 的值")
});
$(document).ready(function () {
    jQuery.validator.addMethod("isIdCardNo", function (value, element) {
        return this.optional(element) || isIdCardNo(value);
    }, "请正确输入您的身份证号码");
});

//增加身份证验证
function isIdCardNo(num) {
    var factorArr = new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2, 1);
    var parityBit = new Array("1", "0", "X", "9", "8", "7", "6", "5", "4", "3", "2");
    var varArray = new Array();
    var intValue;
    var lngProduct = 0;
    var intCheckDigit;
    var intStrLen = num.length;
    var idNumber = num;
    // initialize
    if ((intStrLen != 15) && (intStrLen != 18)) {
        return false;
    }
    // check and set value
    for (i = 0; i < intStrLen; i++) {
        varArray[i] = idNumber.charAt(i);
        if ((varArray[i] < '0' || varArray[i] > '9') && (i != 17)) {
            return false;
        } else if (i < 17) {
            varArray[i] = varArray[i] * factorArr[i];
        }
    }

    if (intStrLen == 18) {
        //check date
        var date8 = idNumber.substring(6, 14);
        if (isDate8(date8) == false) {
            return false;
        }
        // calculate the sum of the products
        for (i = 0; i < 17; i++) {
            lngProduct = lngProduct + varArray[i];
        }
        // calculate the check digit
        intCheckDigit = parityBit[lngProduct % 11];
        // check last digit
        if (varArray[17] != intCheckDigit) {
            return false;
        }
    }
    else {        //length is 15
        //check date
        var date6 = idNumber.substring(6, 12);
        if (isDate6(date6) == false) {
            return false;
        }
    }
    return true;
}
function isDate6(sDate) {
    if (!/^[0-9]{6}$/.test(sDate)) {
        return false;
    }
    var year, month, day;
    year = sDate.substring(0, 4);
    month = sDate.substring(4, 6);
    if (year < 1700 || year > 2500) return false
    if (month < 1 || month > 12) return false
    return true
}
/**
* 判断是否为“YYYYMMDD”式的时期
*
*/
function isDate8(sDate) {
    if (!/^[0-9]{8}$/.test(sDate)) {
        return false;
    }
    var year, month, day;
    year = sDate.substring(0, 4);
    month = sDate.substring(4, 6);
    day = sDate.substring(6, 8);
    var iaMonthDays = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
    if (year < 1700 || year > 2500) return false
    if (((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0)) iaMonthDays[1] = 29;
    if (month < 1 || month > 12) return false
    if (day < 1 || day > iaMonthDays[month - 1]) return false
    return true
}

实例

<asp教程:Button ID="btnCreateYearParameter" Visible="false" runat="server" Text="" OnClick="btnCreateYearParameter_Click"
                            CssClass="btn" OnClientClick="$('#form1').validate();" />

前台控件:

<asp:DropDownList CssClass="shortSelect required" ID="ddlCity" runat="server">
</asp:DropDownList>

jquery js代码:

function initValidate() {
    $("#MainContent_btnSave,#MainContent_btnAnalysis,#btnSave").click(function () {  //这些按钮都会验证,但是咋们讨论的按钮不再所以 $('#form1').validate();用这个
        $('#form1').validate();
    });
}

 

本文来源于:http://www.php100.com/html/program/jquery/2013/0905/5819.html

分享到:
评论

相关推荐

    jQuery Validate表单验证实例

    实例是用jQuery的validate插件做的登陆表单的验证,效果还不错,代码部分可以参见我写的这篇博客:http://blog.csdn.net/eson_15/article/details/51497533

    jquery.validate

    - **初始化 Validate 对象**:使用 `$(selector).validate(options)` 方法初始化一个 Validate 实例,其中 `options` 参数可以用来指定验证规则、错误提示信息等配置项。 #### 三、内置验证规则 jQuery Validate ...

    Validate用户注册表单验证插件.zip

    Validate用户注册表单验证插件是一款基于jQuery实现的通用表单验证插件,有DEMO实例,简单实用。可以进行账号、密码、电话、手机、IP、URL、电子邮箱、中文姓名、身份证号码、数字验证码、自定义验证规则-数字等用户...

    jquery实现表单验证简单实例演示

    标题“jquery实现表单验证简单实例演示”和描述“向大家推荐了一个jquery实现表单验证简单实例演示,需要的朋友可以参考下”指向的内容是关于如何使用jQuery来实现一个表单验证的简单实例。jQuery是一个快速、小巧、...

    Jquery 表单验证类介绍与实例

    ### Jquery 表单验证类介绍与实例 在Web开发中,表单验证是一项非常重要的功能,它确保用户提交的数据符合预期的要求。JQuery作为一款流行的JavaScript库,提供了丰富的插件来简化各种复杂的操作,包括表单验证。...

    jquery正则表达式验证(手机号、身份证号、中文名称)

    本文介绍了如何利用JQuery结合正则表达式来实现手机号、身份证号码和中文名称的验证。通过具体的应用实例,展示了如何将这些验证规则应用于HTML表单验证的全过程。掌握这些知识点,能够有效地提升前端数据处理的准确...

    JQuery.validationEngine表单验证插件(推荐)

    JQuery.validationEngine是一款基于jQuery的表单验证插件,它提供了一种简单且高效的方式来增强表单验证功能。通过这款插件,开发者可以在Web应用中轻松实现输入数据的合法性检验,提高用户体验,减少无效数据的提交...

    JavaScript常用验证脚本总结

    - `jQuery Validation Plugin` 提供了丰富的表单验证功能。 - `async-validator` 是一个轻量级的异步验证库,适用于复杂场景。 压缩包中的 `validation.js` 文件很可能包含了上述某些验证方法的实现,可以作为...

    表单验证插件Validation应用的实例讲解

    9. **身份证验证**:验证中国大陆的身份证号码。 10. **邮政编码验证**:验证中国大陆的邮政编码。 11. **文件验证**:允许用户上传特定类型的文件,例如仅限图片。 12. **IP验证**:验证输入的IP地址格式。 13....

    ASP.NET全栈开发教程之前后台校验结合详解

    4. 运行验证:在需要校验的地方,实例化验证器并调用`Validate`方法,检查模型是否有效。如果验证失败,`Validate`方法会返回一个`ValidationResult`对象,其中包含了所有失败的验证规则。 ```csharp class Program...

Global site tag (gtag.js) - Google Analytics