本文实例汇总了javascript常用验证函数。分享给大家供大家参考。具体汇总如下:
一、字符串类验证
1. 长度限制
复制代码 代码如下:
2. 只能是汉字
复制代码 代码如下:
3. 只能是英文
复制代码 代码如下:
4. 只能是数字
复制代码 代码如下:
5. 只能是英文字符和数字
复制代码 代码如下:
6. 验证邮箱格式
复制代码 代码如下:
7. 屏蔽关键字(这里屏蔽***和****)
复制代码 代码如下:
8. 两次输入密码是否相同
复制代码 代码如下:
9. 屏蔽右键 很酷!
复制代码 代码如下:
oncontextmenu=return false ondragstart=return false onselectstart=return false
加在body中二、表单验证
1 表单项不能为空
复制代码 代码如下:
2 比较两个表单项的值是否相同
复制代码 代码如下:
3 表单项只能为数字和_,用于电话/银行帐号验证上,可扩展到域名注册等
复制代码 代码如下:
4 表单项输入数值/长度限定
复制代码 代码如下:
5 中文/英文/数字/邮件地址合法性判断
复制代码 代码如下:
6 限定表单项不能输入的字符
复制代码 代码如下:
三、其他验证:
1. 检查一段字符串是否全由数字组成
复制代码 代码如下:
2. 怎么判断是否是字符
复制代码 代码如下:
if (/[^/x00-/xff]/g.test(s)) alert(含有汉字);
else alert(全是字符);
3. 怎么判断是否含有汉字
复制代码 代码如下:
if (escape(str).indexof(%u)!=-1) alert(含有汉字);
else alert(全是字符);
4. 邮箱格式验证
复制代码 代码如下:
//函数名:chkemail
//功能介绍:检查是否为email address
//参数说明:要检查的字符串
//返回值:0:不是 1:是
function chkemail(a)
{ var i=a.length;
var temp = a.indexof('@');
var tempd = a.indexof('.');
if (temp > 1) {
if ((i-temp) > 3){
if ((i-tempd)>0){
return 1;
}
}
}
return 0;
}
5. 数字格式验证
复制代码 代码如下:
//函数名:fucchecknum
//功能介绍:检查是否为数字
//参数说明:要检查的数字
//返回值:1为是数字,0为不是数字
function fucchecknum(num)
{
var i,j,strtemp;
strtemp=0123456789;
if ( num.length== 0)
return 0
for (i=0;i{
j=strtemp.indexof(num.charat(i));
if (j==-1)
{
//说明有字符不是数字
return 0;
}
}
//说明是数字
return 1;
}
6. 电话号码格式验证
复制代码 代码如下:
//函数名:fucchecktel
//功能介绍:检查是否为电话号码
//参数说明:要检查的字符串
//返回值:1为是合法,0为不合法
function fucchecktel(tel)
{
var i,j,strtemp;
strtemp=0123456789-()# ;
for (i=0;i{
j=strtemp.indexof(tel.charat(i));
if (j==-1)
{
//说明有字符不合法
return 0;
}
}
//说明合法
return 1;
}
7. 判断输入是否为中文的函数
复制代码 代码如下:
function ischinese(s){
var ret=true;
for(var i=0;iret=ret && (s.charcodeat(i)>=10000);
return ret;
}
8. 综合的判断用户输入的合法性的函数
复制代码 代码如下:
9. 判断密码是否输入一致
复制代码 代码如下:
function issame(str1,str2)
{
if (str1==str2)
{return(true);}
else
{return(false);}
}
10. 判断用户名是否为数字字母下滑线
复制代码 代码如下:
function notchinese(str){
var reg=/[^a-za-z0-9_]/g
if (reg.test(str)){
return (false);
}else{
return(true); }
}
11. form文本域的通用校验函数
作用:检测所有必须非空的input文本,比如姓名,账号,邮件地址等等。
该校验现在只针对文本域,如果要针对form里面的其他域对象,可以改变判断条件。
使用方法:在要检测的文本域中加入title文字。文字是在提示信息,你要提示给用户的该字段的中文名。比如要检测用户名
html如下,当然,最好用可视化工具比如dreamweaver什么的来编辑域。
如果要检测数字类型数据的话,再把域的id统一为sz.
javascript判断日期类型比较麻烦,所以就没有做日期类型校验的程序了.高手可以补充。
程序比较草,只是提供一个思路。抛砖引玉! :)
哦,对了,函数调用方法:
复制代码 代码如下:
function dovalidate()
{
fm=document.forms[0] //只检测一个form,如果是多个可以改变判断条件
for(i=0;i {
//检测判断条件,根据类型不同可以修改
if(fm.tagname.touppercase()==input &&fm.type.touppercase()==text && (fm.title!=))
if(fm.value=/blog/=)//
{
str_warn1=fm.title+不能为空!;
alert(str_warn1);
fm.focus();
return false;
}
if(fm.id.touppercase()==sz)//数字校验
{
if(isnan(fm.value))
{ str_warn2=fm.title+格式不对;
alert(str_warn2);
fm.focus();
return false;
}
}
}
return true;
}
12. 验证radio是否选择
复制代码 代码如下:
希望本文所述对大家基于javascript的web程序设计有所帮助。