Heim >Web-Frontend >js-Tutorial >JS 表单验证大全_表单特效

JS 表单验证大全_表单特效

WBOY
WBOYOriginal
2016-05-16 17:59:06788Durchsuche

1.只能输入数字和英文的:

2.只能输入数字的:

3.只能输入全角的:

4.只能输入汉字的:

--------------------------------------------------------------------------------
验证非法字符,sql
function vdf()
{
var i,j,name,value,message,length,type,a=vdf.arguments,cb_name;
for (i=0; i{
if (a[i].indexOf('#')!=-1)
{
name=fob(a[i].substr(0,a[i].indexOf('#')));
cb_name=fob(a[i].substr((a[i].indexOf('#')+1),a[i].length));
}
else
{
name=fob(a[i]); // 控件名称
}
message=a[i+1]; // 提示信息
type=a[i+2]; // 类型
if (type!="r_time")
{
value=name.value.replace(/ +/g, ""); // 控件值
}
else
{
value=name.value;
}
}
--------------------------------------------------------------------------------
// ===============判断复选框是否选中================ //
if (type=="r_cb")
{
e=document.forms(0).elements;
var flag=false;
for (i=0;i{
if (e[i]!=cb_name)
{
if (e[i].checked==true)
{
flag=true;
break;
}
}
if (i==e.length-1)
{
break;
}
}
if (flag==false)
{
alert(message+"!/n"); //为空时出现的提示
return false;
}
}
// ===============判断下拉框是否选择================ //
if (type=="r_sl")
{
if (name.selected==false)
{
alert(message+"!/n"); //为空时出现的提示
return false;
}
}
// ===============不能为空的判断================ //
if (type=="r")
{
if (value=="") // 判断是否为空
{
alert(message+"!/n"); //为空时出现的提示
name.focus();
name.select();
return false;
}
}
// ===============不能为空的判断,但不获得焦点================ //
if (type=="o_r")
{
if (value=="") // 判断是否为空
{
alert(message+"!/n"); //为空时出现的提示
return false;
}
}
// ===============只能输入中文================ //
if (type=="r_china")
{
if (value.search(/^[/u4e00-/u9fa5]+$/)==-1)
{
alert(message+"!/n"); // 判断不能为空
name.focus();
name.select();
return false;
}
}
// ===============不能为空,必须是数字或者字符判断================ //
if (type=="r_num_char")
{
if (value=="")
{
alert(message+"!/n"); //为空时出现的提示
name.focus();
name.select();
return false;
}
if (value.search(/^[0-9a-zA-Z]+$/)==-1)
{
alert(message+"!/n"); //为空时出现的提示
name.focus();
name.select();
return false;
}
}
// ===============可以为空,不为空时,填数字================ //
if (type=="num")
{
if (value.search(/^[0-9]+$/)==-1 && value!="")
{
alert(message+"!/n"); // 判断不能为空
name.focus();
name.select();
return false;
}
}
// ===============不能为空,必须是数字判断================ //
if (type=="r_num")
{
if (value=="")
{
alert(message+"!/n");
name.focus();
name.select();
return false;
}
if (value.search(/^[0-9]+$/)==-1)
{
alert(message+"!/n"); // 判断不能为空
name.focus();
name.select();
return false;
}
}
// ===============必须输入小于n的数字================ //
if (type.indexOf("r_num{
length=type.substring((type.indexOf('if (value=="") // 为空做的提示
{
alert(message+"!/n");
name.focus();
name.select();
return false;
}
if (value.search(/^[0-9]+$/)==-1) // 不是数字做的提示
{
alert(message+"!/n");
name.focus();
name.select();
return false;
}
if (value.length>length) // 限制数字长度做的限制
{
alert(message+"!/n");
name.focus();
name.select();
return false;
}
}
// ===============必须输入大于n的数字================ //
if (type.indexOf("r_num>")!=-1)
{
length=type.substring((type.indexOf('>')+1),type.length); // 获得rnif (value=="") // 为空做的提示
{
alert(message+"!/n");
name.focus();
name.select();
return false;
}
if (value.search(/^[0-9]+$/)==-1) // 不是数字做的提示
{
alert(message+"!/n");
name.focus();
name.select();
return false;
}
if (value.length{
alert(message+"!/n");
name.focus();
name.select();
return false;
}
}
// ===============必须输入a-b位之间的数字================ //
if (type.indexOf("r_num#")!=-1)
{
length=type.substr((type.indexOf('>')+1),type.length);
length=length.substr(0,length.lastIndexOf("-"));
length1=type.substring((type.indexOf('-')+1),type.length) // 获得rnif (value=="") // 为空做的提示
{
alert(message+"!/n");
name.focus();
name.select();
return false;
}
if (value.search(/^[0-9]+$/)==-1) // 不是数字做的提示
{
alert(message+"!/n");
name.focus();
name.select();
return false;
}
if (value.lengthlength1) // 限制数字长度做的限制
{
alert(message+"!/n");
name.focus();
name.select();
return false;
}
}
// ===============不能为空,必须是float类型================ //
if (type=="r_float")
{
if (value=="")
{
alert(message+"!/n");
name.focus();
name.select();
return false;
}
if (value.search(/^[0-9]+$/)!=-1 || value.search(/^([0-9]+)|([0-9]+/.[0-9]*)|([0-9]*/.[0-9]+)$/)!=-1)
{
return true;
}
else
{
alert(message+"!/n"); // 判断不能为空
name.focus();
name.select();
return false;
}
}
// ===============判断email,不一定输入================ //
if (type.indexOf("email")!=-1)
{
if (name.value!="")
{
if (value.search(/^[_/.a-z0-9]+@[a-z0-9]+[/.][a-z0-9]{2,}$/i)==-1)
{
alert(message+"!/n");
name.focus();
name.select();
return false;
}
}
}
// ===============判断email,一定输入================ //
if (type.indexOf("r_email")!=-1)
{
if (name.value=="")
{
alert(message+"!/n");
name.focus();
name.select();
return false;
}
if (value.search(/^[_/.a-z0-9]+@[a-z0-9]+[/.][a-z0-9]{2,}$/i)==-1)
{
alert(message+"!/n");
name.focus();
name.select();
return false;
}
}
// ===============判断日期,比如2000-12-20================ //
if (type=="r_date")
{
flag=true;
getdate=value;
if (getdate.search(/^[0-9]{4}-(0[1-9]|[1-9]|1[0-2])-((0[1-9]|[1-9])|1[0-9]|2[0-9]|3[0-1])$/)==-1) // 判断输入格式时候正确
{
flag=false;
}
else
{
var year=getdate.substr(0,getdate.indexOf('-')) // 获得年
// 下面操作获得月份
var transition_month=getdate.substr(0,getdate.lastIndexOf('-'));
var month=transition_month.substr(transition_month.lastIndexOf('-')+1,transition_month.length);
if (month.indexOf('0')==0)
{
month=month.substr(1,month.length);
}
// 下面操作获得日期
var day=getdate.substr(getdate.lastIndexOf('-')+1,getdate.length);
if (day.indexOf('0')==0)
{
day=day.substr(1,day.length);
}
//alert(month);
//alert(day)
//return false;
if ((month==4 || month==6 || month==9 || month==11) && (day>30)) // 4,6,9,11月份日期不能超过30
{
flag=false;
}
if (month==2) // 判断2月份
{
if (LeapYear(year))
{
if (day>29 || day}
else
{
if (day>28 || day}
}
else
{
flag=true;
}
}
if (flag==false)
{
alert(message+"!/n"); //为空时出现的提示
name.focus();
name.select();
return false;
}
}
1. 长度限制
<script> <BR>function test() <BR>{ <BR>if(document.a.b.value.length>50) <BR>{ <BR>alert("不能超过50个字符!"); <BR>document.a.b.focus(); <BR>return false; <BR>} <BR>} <BR></script>





2. 只能是汉字

3." 只能是英文


4. 只能是数字


5. 只能是英文字符和数字

6. 验证油箱格式


7. 屏蔽关键字(这里屏蔽***和****)





8. 两次输入密码是否相同





<script> <BR>function check() <BR>{ <BR>with(document.all){ <BR>if(input1.value!=input2.value) <BR>{ <BR>alert("false") <BR>input1.value = ""; <BR>input2.value = ""; <BR>} <BR>else document.forms[0].submit(); <BR>} <BR>} <BR></script>
够了吧 :)
屏蔽右键 很酷
oncontextmenu="return false" ondragstart="return false" onselectstart="return false"
加在body中

2.1 表单项不能为空

2.2 比较两个表单项的值是否相同

2.3 表单项只能为数字和"_",用于电话/银行帐号验证上,可扩展到域名注册等

2.4 表单项输入数值/长度限定

2.5 中文/英文/数字/邮件地址合法性判断

2.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. 综合的判断用户输入的合法性的函数
---------------------------------------

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn