jyy
2021-04-14 6ada97d503bd93722c081b66a9adcce7599e5536
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
/**
 * 封装了一下validform,提供了更丰富的datatype
 * 
 * @author 姜友瑶 2016-06-24
 */
;
 
// 正两位浮点数和0
var regx = /^\d+\.?\d{0,2}$/;
// 正负整数
var zfzs = /^-?\d+$/;
var idCardReg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
// 手机号或者座机号
var phoneORmobile = /(\d{3}-\d{8}|\d{4}-\d{7})|(^1[358]\d{9}$)/;
var MValidform = function() {
 
    "use strict";// 严格模式
    return {
        // 验证一个form表格
        validform : function(formSelecter) {
 
            var exForm = $(formSelecter).Validform(
                    {
 
                        tiptype : 3,
                        // 扩展自定义dattype
                        datatype : {
 
                            // 正浮点2位小数
                            "price" : function(gets, obj, curform, regxp) {
                                if (obj.val() == "")
                                    return false;
                                if (!isNaN(obj.val())) {
                                    return regx.test(obj.val())
                                } else {
                                    return false;
                                }
                            },
 
                            // 正负int都可以
                            "zfn" : function(gets, obj, curform, regxp) {
 
                                if (obj.val() == "")
                                    return false;
                                if (!isNaN(obj.val())) {
                                    return zfzs.test(obj.val());
                                } else {
                                    return false;
                                }
                            },
 
                            // 省份证格式验证
                            "idCard" : function(gets, obj, curform, regxp) {
 
                                if (obj.val() == "") {
                                    return false;
                                }
                                var result = idCardReg.test(obj.val());
                                return result;
                            },
                            //正负int都可以
                            "zn" : function(gets, obj, curform, regxp) {
 
                                if (obj.val() == "")
                                    return false;
                                if(!isNaN(obj.val())&&obj.val()>0){
                                    return    zfzs.test(obj.val());
                                }else{
                                    return false;
                                }
                            },
                            "pOrm" : function(gets, obj, curform, regxp) {
 
                                if (obj.val() == "") {
                                    return false;
                                }
                                var result = phoneORmobile.test(obj.val());
                                return result;
 
                            },
                            // 百分比
                            "hl" : function(gets, obj, curform, regxp) {
                                if (obj.val() == "")
                                    return false;
                                if (!isNaN(obj.val())) {
                                    var isHl = (parseFloat(obj.val())) >= 0
                                            && (parseFloat(obj.val())) <= 100;
                                    return regx.test(obj.val()) && isHl;
                                } else {
                                    return false;
                                }
                            },
                        },
                    });
            return exForm;
        },
 
    }
}();