easyui 验证

来源:互联网 发布:亚马逊kindle阅读软件 编辑:程序博客网 时间:2024/06/05 12:46
文件框
<input class="easyui-filebox" accept=".doc,.xlsx,.docx,.pdf"             data-options="prompt:'请选择文件',buttonText:'&nbsp;&nbsp;&nbsp;&nbsp;'">
页面用法 validType="selectValueRequired"

下拉菜单验证$.extend($.fn.validatebox.defaults.rules, {    selectValueRequired: {        validator: function(value,param){            if (value == "" || value.indexOf('请选择') >= 0) {                return false;            }else {                return true;            }        },        message: '请选择'    }

});

/** * 身份证验证 * */var aCity = {    11: "北京",    12: "天津",    13: "河北",    14: "山西",    15: "内蒙古",    21: "辽宁",    22: "吉林",    23: "黑龙江",    31: "上海",    32: "江苏",    33: "浙江",    34: "安徽",    35: "福建",    36: "江西",    37: "山东",    41: "河南",    42: "湖北",    43: "湖南",    44: "广东",    45: "广西",    46: "海南",    50: "重庆",    51: "四川",    52: "贵州",    53: "云南",    54: "西藏",    61: "陕西",    62: "甘肃",    63: "青海",    64: "宁夏",    65: "新疆",    71: "台湾",    81: "香港",    82: "澳门",    91: "国外"}
身份证验证
function isCardID(sId) {    var iSum = 0;    var info = "";    if(!/^\d{17}(\d|x)$/i.test(sId)) return "你输入的身份证长度或格式错误";    sId = sId.replace(/x$/i, "a");    if(aCity[parseInt(sId.substr(0, 2))] == null) return "你的身份证地区非法";    sBirthday = sId.substr(6, 4) + "-" + Number(sId.substr(10, 2)) + "-" + Number(sId.substr(12, 2));    var d = new Date(sBirthday.replace(/-/g, "/"));    if(sBirthday != (d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate())) return "身份证上的出生日期非法";    for(var i = 17; i >= 0; i--) iSum += (Math.pow(2, i) % 11) * parseInt(sId.charAt(17 - i), 11);    if(iSum % 11 != 1) return "你输入的身份证号非法";    return true; //aCity[parseInt(sId.substr(0,2))]+","+sBirthday+","+(sId.substr(16,1)%2?"":"")}$.extend($.fn.validatebox.defaults.rules, {    idcared: {        validator: function(value, param) {            var flag = isCardID(value);            return flag == true ? true : false;        },        message: '不是有效的身份证号码'    }});
  手机号码验证 $.extend($.fn.validatebox.defaults.rules, {     phoneRex: {       validator: function(value){       var rex=/^1[3-8]+\d{9}$/;       //var rex=/^(([0\+]\d{2,3}-)?(0\d{2,3})-)(\d{7,8})(-(\d{3,}))?$/;       //区号:前面一个0,后面跟2-3位数字 : 0\d{2,3}       //电话号码:7-8位数字: \d{7,8       //分机号:一般都是3位数字: \d{3,}        //这样连接起来就是验证电话的正则表达式了:/^((0\d{2,3})-)(\d{7,8})(-(\d{3,}))?$/             var rex2=/^((0\d{2,3})-)(\d{7,8})(-(\d{3,}))?$/;       if(rex.test(value)||rex2.test(value))       {         // alert('t'+value);         return true;       }else       {        //alert('false '+value);          return false;       }                },       message: '请输入正确电话或手机格式'     }   });       $(function(){         $('input.easyui-validatebox').validatebox({           tipOptions: {  // the options to create tooltip             showEvent: 'mouseenter',             hideEvent: 'mouseleave',             showDelay: 0,             hideDelay: 0,             zIndex: '',             onShow: function(){               if (!$(this).hasClass('validatebox-invalid')){                 if ($(this).tooltip('options').prompt){                   $(this).tooltip('update', $(this).tooltip('options').prompt);                 } else {                   $(this).tooltip('tip').hide();                 }               } else {                 $(this).tooltip('tip').css({                   color: '#000',                   borderColor: '#CC9933',                   backgroundColor: '#FFFFCC'                 });               }             },             onHide: function(){               if (!$(this).tooltip('options').prompt){                 $(this).tooltip('destroy');               }             }           }         }).tooltip({           position: 'right',           content: function(){             var opts = $(this).validatebox('options');             return opts.prompt;           },           onShow: function(){             $(this).tooltip('tip').css({               color: '#000',               borderColor: '#CC9933',               backgroundColor: '#FFFFCC'             });           }         });       });
文件大小验证

$.extend($.fn.validatebox.defaults.rules, {    // filebox验证文件大小的规则函数    // 如:validType : ['fileSize[1,"MB"]']    fileSize : {        validator : function(value, array) {            var size = array[0];            var unit = array[1];            if (!size || isNaN(size) || size == 0) {                $.error('验证文件大小的值不能为 "' + size + '"');            } else if (!unit) {                $.error('请指定验证文件大小的单位');            }            var index = -1;            var unitArr = new Array("bytes", "kb", "mb", "gb", "tb", "pb", "eb", "zb", "yb");            for (var i = 0; i < unitArr.length; i++) {                if (unitArr[i] == unit.toLowerCase()) {                    index = i;                    break;                }            }            if (index == -1) {                $.error('请指定正确的验证文件大小的单位:["bytes", "kb", "mb", "gb", "tb", "pb", "eb", "zb", "yb"]');            }            // 转换为bytes公式            var formula = 1;            while (index > 0) {                formula = formula * 1024;                index--;            }            // this为页面上能看到文件名称的文本框,而非真实的file            // $(this).next()file元素            return $(this).next().get(0).files[0].size < parseFloat(size) * formula;        },        message : '文件大小必须小于 {0}{1}'    }});

原创粉丝点击