JavaScript 表单验证总结

  1. 云栖社区>
  2. 博客>
  3. 正文

JavaScript 表单验证总结

webmirror 2017-05-04 12:12:13 浏览1838
展开阅读全文

JavaScript 可用来在数据被送往服务器前对 HTML 表单中的这些输入数据进行验证。
表单数据经常需要使用 JavaScript 来验证其正确性

验证帐号

验证规则:字母、数字、下划线组成,字母开头,4-16位

function validateAccounts(str) {   
    var reg = /^[a-zA-Z]\w{3,15}$/; 
    return reg.test(str);  
}  

验证手机号码

验证电话号码其实无非是检验一下他们位数对不对,开头有没有写错而已。我们从手机号码历程来看:

中国电信手机号码开头数字:2G/3G号段(CDMA2000网络)133、153、180、181、189。4G号段 177

中国联通手机号码开头数字:2G号段(GSM网络)130、131、132、155、156。3G上网卡145。3G号段(WCDMA网络)185、186。4G号段 176、185[1]

中国移动手机号码开头数字:2G号段(GSM网络)有134x(0-8)、135、136、137、138、139、150、151、152、158、159、182、183、184。3G号段(TD-SCDMA网络)有157、187、188。3G上网卡 147。4G号段 178

从以上我们可以看到第一位是 1 开头,第二位则则有 3,4,5,7,8 ,之后则是数字 0-9 。从而我们可以得出一个符合当前的手机号码验证正则表达式

function validatePhone(str) {   
    var reg = /^1[3|4|5|7|8]\d{9}$/; 
    return reg.test(str);  
}  

但也许第二位代码可能随时增加一个,比如以16开头呢?19开头呢?谁知道以后的事,咱们的代码要保证几年没问题,所以还可以不验证第二位规则

function validatePhone(str) {   
    var reg = /^1\d{10}$/;
    return reg.test(str);  
} 

验证电话号码

验证规则:区号+号码,区号以0开头,3位或4位

号码由7位或8位数字组成

区号与号码之间可以无连接符,也可以“-”连接

如01088888888,010-88888888,0955-7777777

function checkPhone(str){
    var reg = /^0\d{2,3}-?\d{7,8}$/;
    return reg.test(str);
}

验证邮箱

验证规则:姑且把邮箱地址分成“第一部分@第二部分”这样

第一部分:由字母、数字、下划线、短线“-”、点号“.”组成,第二部分:为一个域名,域名由字母、数字、短线“-”、域名后缀组成,而域名后缀一般为.xxx或.xxx.xx,一区的域名后缀一般为2-4位,如cn,com,net,现在域名有的也会大于4位

function validateEmail(str){
    var reg = /^(\w-*\.*)+@(\w-?)+(\.\w{2,})+$/;
    return reg.test(str);
}

验证汉字

function isChinese(str){
var reg=/^[u0391-uFFE5]+$/;
return reg.test(str);
}

网友评论

登录后评论
0/500
评论
webmirror
+ 关注