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; 
 |          }, 
 |    
 |      } 
 |  }(); 
 |  
  |