(收藏)JS验证

 1 /*
 2    函数名:检验表单的函数
 3    作者:xuwen      日期:2007-2-10
 4    参数    _obj:验证的对象 type:验证的类型 errmsg:错误的提示信息 flag:焦点的状态
 5    表单失去焦点时调用:onblur=checkInput(this,'isUserName','用户名为数字,下划线组成',1)
 6    表单提交时调用:f1 = checkInput(frm.UserName,'isUserName','用户名为数字,下划线组成',1)
 7*/
 8    function checkInput(_obj,type,errmsg,flag){
 9    var reg;
10    var obj = $(_obj.id);
11    var info = $(_obj.id+"Info");
12    switch(type){
13    case 'isEmpty':
14        reg = /^\S+$/;
15        break;
16    case 'isEmail':
17        reg = /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/;
18        break;
19    case 'isPostCode':
20        reg = /^\d{6}$/;//国内的六位邮编格式
21        break;
22    case 'isTell':
23        reg = /(^[0-9]{3,4}\-[0-9]{3,8}$)|(^[0-9]{3,8}$)|(^\([0-9]{3,4}\)[0-9]{3,8}$)|(^0{0,1}13[0-9]{9}$)/; //手机号码或区号-电话;
24        break;
25    case "isUserName":
26        reg = /^\w+$/;//字母开头,允许数字,字母和下划线
27        break;
28    case "isEnglish":
29        reg = /^[a-z]{3,20}$/;
30        break;
31    case "isNumber":
32        reg =/^[1-9]\d*$/;
33        break;
34    case "indexChar":
35        reg=/^[A-Z]$/
36        break;
37    case "isUrl":
38        reg=/^\S+$/;
39        break;
40    }
41    //提交表单或失去焦点进行验证
42    if(flag){
43        if(reg.test(trim(obj.value))==false){
44            info.innerHTML ="<font color='red'>× "+errmsg+"</font>";
45            return false;}
46        else{
47            info.innerHTML ="<font color='green'>√</font>";
48            return true;}
49    }
50    //获得焦点时进行提示
51    else{
52        info.innerHTML ="<font color='blue'>"+errmsg+"</font>";
53    }
54}
55function $(_id){
56    return document.getElementById(_id);
57}
58//去掉开始和结束的空格
59 function trim(string){    return  string.replace(/(^\s*)|(\s*$)/g,"");}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏AndroidTv

前端入门6-JavaScript客户端api&jQuery

作为一个前端小白,入门跟着这四个来源学习,感谢作者的分享,在其基础上,通过自己的理解,梳理出的知识点,或许有遗漏,或许有些理解是错误的,如有发现,欢迎指点下。

1254
来自专栏达摩兵的技术空间

oo-css面对对象的编程样式

很多开发者觉得css很简单,如果有时间更愿意用在学习和研究js上,随着css3推出以及一些css的预处理语言和面对对象的编程css的方式的出现,css已经出现了...

922
来自专栏LIN_ZONE

Vue.js——60分钟快速入门(转载) Vue.js介绍声明该文是转载的,欢迎转载,支持尊重版权,原文作者:keepfool,原文地址:http://www.cnblogs.com/keepfo

Vue.js是当下很火的一个JavaScript MVVM库,它是以数据驱动和组件化的思想构建的。相比于Angular.js,Vue.js提供了更加简洁、更易于...

1252
来自专栏GreenLeaves

Vue.js系列之三模板语法

Vue.js 使用了基于 HTML 的模板语法,允许开发者声明式地将 DOM 绑定至底层 Vue 实例的数据。所有 Vue.js 的模板都是合法的 HTML ,...

23810
来自专栏柠檬先生

jquery鼠标事件

click()   为点击事件绑定一个事件处理函数,或者触发元素点击事件。   .click( handler(eventObject) ) ...

2037
来自专栏魂祭心

原 js页面传值参数打包类

3415
来自专栏JetpropelledSnake

Vue学习笔记之Vue指令系统介绍

所谓指令系统,大家可以联想咱们的cmd命令行工具,只要我输入一条正确的指令,系统就开始干活了。

1044
来自专栏keyWords

深入React技术栈之setState详解

821
来自专栏从零开始学 Web 前端

从零开始学 Web 之 jQuery(八)each,多库共存,包装集,插件

each 方法用来遍历 jQuery 对象的,它的参数是一个事件处理函数,这个事件处理函数有两个参数,第一个参数是索引,第二个参数时索引对应的 DOM 对象,使...

1274
来自专栏大数据钻研

献给前端的小伙伴,祝大家面试顺利!

HTML相关问题 1.XHTML和HTML有什么区别 HTML是一种基本的WEB网页设计语言,XHTML是一个基于XML的置标语言 最主要的不同: XHTM...

3035

扫码关注云+社区

领取腾讯云代金券