<script type="text/javascript">
   function checkform(){
   var email=document.getElementById("email").value;   if(email<=0){
       document.getElementById("MailError").style.display="inline";
       document.getElementById("MailError").innerHTML="电子邮不能为空";
       return ;
  }else{
       var atIndex = email.indexOf('@');
   var doIndex = email.indexOf('.');
       var lastDoIndex=email.lastIndexOf('.');
       
        if(atIndex<0){
document.getElementById("MailError").style.display="inline";
document.getElementById("MailError").innerHTML="邮箱中必须含有@符号";
return ;
}else if(atIndex==0){
document.getElementById("MailError").style.display="inline";
document.getElementById("MailError").innerHTML="邮箱中第一个字符不能为@";
return ;
}

if(email.indexOf('@',atIndex+1)!=-1){
document.getElementById("MailError").style.display="inline";
document.getElementById("MailError").innerHTML="邮箱中不能含有两个以上的@";
return ;
}

if(doIndex<0){
document.getElementById("MailError").style.display="inline";
document.getElementById("MailError").innerHTML="邮箱必须含有.";
return ;
}
if(doIndex==0){
document.getElementById("MailError").style.display="inline";
document.getElementById("MailError").innerHTML=".不能位于邮箱的第一位";
return ;
}
if(email.indexOf('.',atIndex)-atIndex<2){
document.getElementById("MailError").style.display="inline";
document.getElementById("MailError").innerHTML=".与@不能相邻";
return ;
}


 

  }
       
          document.register.submit(); 
   }电子邮件:<input type="text" id="email" name="email" value="" maxlength="20" size="28"/><span id="MailError" style="font-size:12px;color:red;display:none;"></span><br><br> 按照这代码帮解决下,.和@不相邻的问题------另还有特殊字符在这里面验证问题

解决方案 »

  1.   

        建议用正则表达式验证
        http://hi.baidu.com/cxf83/blog/item/a7264366305dec24aa184c43.html
      

  2.   

    JavaScript表单验证email,判断一个输入量是否为邮箱email,通过正则表达式实现。
    //检查email邮箱
    function isEmail(str){
           var reg = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/;
           return reg.test(str);
    }
      

  3.   

    JavaScript表单验证email,判断一个输入量是否为邮箱email,通过正则表达式实现。
    //检查email邮箱
    function isEmail(str){
      var reg = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/;
      return reg.test(str);
    }
    用正则表达式很方便的,“/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/”符合要求的正确的邮箱格式。
    一个简单的邮箱验证不需要这么复杂的
    方法如下:
    function checkform(){
    var email=document.getElementById("email").value;if(email.length==0){
    document.getElementById("MailError").style.display="inline";
    document.getElementById("MailError").innerHTML="电子邮不能为空";
    return false;
    }else{
    var reg = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/;
      if(!reg.test(email))
    {
    document.getElementById("MailError").style.display="inline";
    document.getElementById("MailError").innerHTML="电子邮件格式不正确";
    return false;
    }
    else
    {
    document.getElementById("MailError").innerHTML="电子邮件格式输入正确";
    }
      
    }
    return  true;
    }