Web 表单验证 javascript

 本javascript 用于验证表单,验证提示///

Power By WeisNet   Xhtmler.Com Beta

转载请注时出处

2006-6-17

1.要验证的页面 Web.htm

 

< html  xmlns ="http://www.w3.org/1999/xhtml"   >
< head  runat ="server" >
    <link href="Css.css" rel="stylesheet" type="text/css" />
< script  language ="javascript"  type ="text/javascript"  src ="Validate.js?ver=1.0&zWorld" ></ script >
< title > 表单验证 </ title >
</ title >
< body >
< script  language ="javascript"  type ="text/javascript" > var WebCheck = new onfocusFunc(); </ script >
< table  cellpadding ="3"  cellspacing ="0"  width ="100%"  style ="margin:16pt auto;"  id ="chkFormTable" >
                   
< tr >
                      
< td  class ="tdCss_f" >
                       用户名
< span  style ="color:red" > * </ span >
                      
</ td >
                      
< td  align ="left" >
                       
< input  type ="text"  name ="logName"  id ="logName"  runat ="server"  class ="inputCss"   />
                      
</ td >
                      
< td  class ="tdCss_t"  align ="left" >
                       
< div  id ="logName_info" > 2-20个字符(包括字母,数字,下划线)! </ div >
                      
</ td >
                   
</ tr >
                   
<!-- -------------------------- -->
                   
< tr >
                      
< td  colspan ="3"  class ="splitTD" >

                      
</ td >
                   
</ tr >
                   
<!-- -------------------------- -->
                   
< tr >
                      
< td  class ="tdCss_f" >
                       登陆密码
< span  style ="color:red" > * </ span >
                      
</ td >
                      
< td  align ="left" >
                       
< input  type ="password"  name ="logPwd"  id ="logPwd"  runat ="server"  class ="inputCss"   />
                      
</ td >
                      
< td  class ="tdCss_t"  align ="left" >
                       
< div  id ="logPwd_info" > 6-20个字符(包括字母,数字,下划线)! </ div >
                      
</ td >
                   
</ tr >
                   
< tr >
                      
< td  class ="tdCss_f" >
                       
&nbsp; < script  language ="javascript"  type ="text/javascript" > var Web=new Main();initForm(); </ script >
                      
</ td >
                      
< td  align ="left"  colspan ="2" >
                         
< input  type ="button"  name ="RegBtn"  id ="RegBtn"  runat ="server"  onclick ="if (!CheckAllform()) return false;"   />
                      
</ td >
                   
</ tr >
</ table >
</ body >
</ html >

 

2 . validate.js

 

///
///ValidateForm1.0
///Power By WeisNet   Xhtmler.Com
//
var  onfocusFunc  =   function ()  {}
var  state  =   false ;
var  ComDo  =   new  onfocusFunc();
onfocusFunc.prototype.focus 
=   {
       Onfocus:
function(obj)
       
{
            
var idbox = document.all.item(obj);
            
var idinfo;
            
for (var item in ComDo.Infos)
            
{
                 
if (item==obj)
                  
{
                      idinfo 
= ComDo.ReturnSpan(item);
                      idinfo.className 
= 'focusCss';
                      idinfo.innerHTML 
= ""+ComDo.Infos[item].b;
                      
if (idbox.value.trim()!='')
                      
{
                          ComDo.vilidBox(idbox,item);
                      }
 
                  }

            }

            
       }
,
       Onkeyup:
function(obj)
       
{
            
var idbox = document.all.item(obj);
           
// var idinfo = document.all.item(obj+'_info');
            for (var item in ComDo.Infos)
                 
{
                      
if (item==obj)
                      
{
                               idinfo 
= ComDo.ReturnSpan(item);
                               idinfo.className 
= 'focusCss';
                               
//idinfo.innerHTML = ""+ComDo.Infos[item].b; 
                               ComDo.vilidBox(idbox,item);
                      }

                 }

            
       }
,
       Onblur:
function(obj)
       
{
            
var idbox = document.all.item(obj);
            
var idinfo ;
            
if (idbox.value.trim()!='')
            
{
                 
for (var item in ComDo.Infos)
                 
{
                      
if (item==obj)
                      
{
                               idinfo 
= ComDo.ReturnSpan(item);
                               idinfo.className 
= 'blurCss';
                               
//idinfo.innerHTML = ""+ComDo.Infos[item].b; 
                      }

                 }

            }

            
else {
                 
for (var item in ComDo.Infos)
                 
{
                      
if (item==obj)
                      
{
                               idinfo 
= ComDo.ReturnSpan(item);
                               idinfo.className 
= 'blurCss';
                               idinfo.innerHTML 
= ""+ComDo.Infos[item].a; 
                      }

                 }

            }

       }

}


onfocusFunc.prototype.Infos 
=   {
      logName:
{
              a:
"2-20个字符(包括字母,数字,下划线)!",
              b:
"请填写用户名!",
              c:
"用户名不能为空!",
              d:
"logName",
              e:
"logName_info",
              f:
function() {
                     ComDo.vilidBox(ComDo.ReturnTagID(
'logName'),'logName');
                     
return state;
                 }

              }
,
      logPwd:
{
              a:
"6-20个字符(包括字母,数字,下划线)!",
              b:
"请填写用户密码!",
              c:
"密码不能空!",
              d:
"logPwd",
              e:
"logPwd_info",
              f:
function() {
                     ComDo.vilidBox(ComDo.ReturnTagID(
'logPwd'),'logPwd');
                     
return state;
                 }

              }

}


String.prototype.trim 
=   function ()
{
     
return this.replace(/(^s*)|(s*$)/g,'');
}



var  initForm  =   function ()
{
    
var tbl = document.getElementById("chkFormTable");
    
var inputBox = tbl.getElementsByTagName("INPUT");
    
for (var i=0;i<inputBox.length;i++)
    
{
         
if (inputBox[i].type=='text' || inputBox[i].type=='password')
         
{
              inputBox[i].onfocus 
= doFocus;
              inputBox[i].onkeyup 
= doKeyup;
              inputBox[i].onblur 
= doBlur;
         }

    }

}


var  doFocus  =   function ()     // evnt.target Navigator
{
       
var obj = event.srcElement;
       ComDo.focus.Onfocus(ComDo.Infos[obj.id].d);
}


var  doKeyup  =   function ()
{
       
var obj = event.srcElement;
       ComDo.focus.Onkeyup(ComDo.Infos[obj.id].d);
}


var  doBlur  =   function ()
{
       
var obj = event.srcElement;
       ComDo.focus.Onblur(ComDo.Infos[obj.id].d);
}


// 返回spn showInfo Of the box Validate
onfocusFunc.prototype.ReturnSpan  =   function (item)
{
     
return document.all.item(ComDo.Infos[item].e);
}


onfocusFunc.prototype.ReturnTagID 
=   function (item)
{
     
return document.all.item(ComDo.Infos[item].d);
}


// 验证方法
onfocusFunc.prototype.vilidBox  =   function (idbox,item)
{
      idbox.value 
= idbox.value.trim();
      
var spn = ComDo.ReturnSpan(item);
      
switch (ComDo.Infos[item].d)
      
{
            
case "logName":
               chkLogName(idbox,spn,item);
               
break;
            
case "logPwd":
               chkLogPwdf(idbox,spn,item);
               
break;
            
default:
               
break;
      }

}


function  checkByteLength(str,minlen,maxlen)  {
    
if (str == nullreturn false;
    
var l = str.length;
    
var blen = 0;
    
for(i=0; i<l; i++{
        
if ((str.charCodeAt(i) & 0xff00!= 0{
            blen 
++;
        }

        blen 
++;
    }

    
if (blen > maxlen || blen < minlen) {
        
return false;
    }

    
return true;
}


// 验证表单
function  chkLogName(obj,spn,item)
{
      
if (!checkByteLength(obj.value.trim(),2,20))
      
{
            spn.className 
= 'errCss';
            spn.innerHTML 
= ComDo.Infos[item].a; 
            state 
= false;
      }

      
else 
      
{
            spn.className 
= 'focusCss';
            spn.innerHTML 
= '输入正确';
            state 
= true
      }

}


function  chkLogPwdf(obj,spn,item)
{
      
var fpwd = document.all.item('chkLogPwd');
      fpwd.value 
= '';
      
if (!checkByteLength(obj.value.trim(),6,20))
      
{
            spn.className 
= 'errCss';
            spn.innerHTML 
= ComDo.Infos[item].a; 
            state 
= false;
      }

      
else 
      
{
            spn.className 
= 'focusCss';
            spn.innerHTML 
= '输入正确'
            state 
= true;
      }

}


function  chkChkLogPwd(obj,spn,item)
{
      
if (!checkByteLength(obj.value.trim(),6,20))
      
{
            spn.className 
= 'errCss';
            spn.innerHTML 
= ComDo.Infos[item].a; 
            state 
= false;
      }

      
else 
      
{
            
var fpwd = document.all.item('logPwd');
            
if (fpwd.value.trim()!=obj.value.trim())
            
{
                  spn.className 
= 'errCss';
                  spn.innerHTML 
= ComDo.Infos[item].c; 
                  state 
= false
            }

            
else
            
{
                  spn.className 
= 'focusCss';
                  spn.innerHTML 
= '输入正确'
                  state 
= true;
            }

      }

}


function  chkLogEmail(obj,spn,item)
{
      
if (!checkByteLength(obj.value.trim(),6,20))
      
{
            spn.className 
= 'errCss';
            spn.innerHTML 
= ComDo.Infos[item].a; 
            state 
= false;
      }

      
else 
      
{
            
var RegMail = /^[_a-zA-Z0-9-]+(.[_a-zA-Z0-9-]*)*@[a-zA-Z0-9-]+([.][a-zA-Z0-9-]+)+$/;
            
if (!RegMail.test(obj.value.trim()))
            
{
                 spn.className 
= 'errCss';
                 spn.innerHTML 
= ComDo.Infos[item].c;  
                 state 
= false;
            }

            
else
            
{
                 spn.className 
= 'focusCss';
                 spn.innerHTML 
= '输入正确'
                 state 
= true;
            }

      }

}


function  chkChkCode(obj,spn,item)
{
      
if (obj.value.trim()=='')
      
{
            spn.className 
= 'errCss';
            spn.innerHTML 
= ComDo.Infos[item].a; 
            state 
= false;
      }

      
else 
      
{
            
var SecReg = /^d{6}$/gi;
            
if (!SecReg.test(obj.value.trim()))
            
{
                 spn.className 
= 'errCss';
                 spn.innerHTML 
= ComDo.Infos[item].c;  
                 state 
= false;
            }

            
else
            
{
                 spn.className 
= 'focusCss';
                 spn.innerHTML 
= '输入正确'
                 state 
= true
            }

      }

}



// 验证所在表单控件方法
onfocusFunc.prototype.CheckAllform  =   function ()
{
    state 
= false;
    
var tbl = document.getElementById("chkFormTable");
    
var inputBox = tbl.getElementsByTagName("INPUT");
    
for (var i=0;i<inputBox.length;i++)
    
{
         
if (inputBox[i].type=='text' || inputBox[i].type=='password')
         
{
               ComDo.vilidBox(inputBox[i],inputBox[i].id);
         }

    }

    
for (var k in ComDo.Infos)
    

          
if (ComDo.Infos[k].f()==false)
          
{
                
return false;
          }

    }

    
return true;
}

 

3. css文件 css.css

 

body  {
}


.focusCss 
{width:356px;height:24px;border:1px solid green;padding-Left:4pt;line-Height:24px;}
.blurCss 
{width:356px;height:24px;border:0px solid green;padding-Left:4pt;line-Height:24px;}
.errCss 
{width:356px;height:24px;border:1px solid red;padding-Left:4pt;line-Height:24px;color:Red;}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fx_blog

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值