惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
DataBreaches.Net
IT之家
IT之家
The Cloudflare Blog
Apple Machine Learning Research
Apple Machine Learning Research
WordPress大学
WordPress大学
N
Netflix TechBlog - Medium
阮一峰的网络日志
阮一峰的网络日志
P
Proofpoint News Feed
L
LangChain Blog
博客园 - Franky
美团技术团队
J
Java Code Geeks
Microsoft Security Blog
Microsoft Security Blog
博客园 - 叶小钗
小众软件
小众软件
Y
Y Combinator Blog
B
Blog RSS Feed
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
D
Docker
Hugging Face - Blog
Hugging Face - Blog
Jina AI
Jina AI
罗磊的独立博客
大猫的无限游戏
大猫的无限游戏
Vercel News
Vercel News

博客园 - 许文

Sql server一些常见性能问题的总结 ASP.NET 开发规范 第八章 其它 ASP.NET 开发规范 第七章 控件命名 ASP.NET 开发规范 第六章 语句 - 许文 ASP.NET 开发规范 第五章 命名 ASP.NET 开发规范 第四章 声明 ASP.NET 开发规范 第三章 注释 ASP.NET 开发规范 第二章 代码外观 ASP.NET 开发规范 第一章 概述 ASP.NET 开发规范(目录) 多个子站点共用同一个Cookies验证 信息系统集成项目管理的认识和体会 人月神话:软件界面交互和易用性改进总结 HotHeart写的Ajax类使用实例 ajax类使用过程出现的问题请教. 使用Nielsen的十条准则做WEB的启发式评估 写了一个Ajax的验证用户注册的函数, FileSystem对象常用的文件操作函数有哪些(转载) 您喜欢哪一种变量命名的规则
好久没有更新了,上传一个网站上通用的验证效果的函数吧。
许文 · 2007-04-06 · via 博客园 - 许文

之前觉得在注册表单的时候,当填写表单失去焦点进行验证的效果很酷,自己也经历了很多的版本的改进,不过都是JS的代码,现在感觉已经成形了。所以发到网上让大家PK一下。

 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*/

 8function 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//去掉开始和结束的空格
59function trim(string){    return  string.replace(/(^\s*)|(\s*$)/g,"");}