表单验证

来源:互联网 发布:点图打码辅助软件 编辑:程序博客网 时间:2024/04/20 04:48

$(function(){

$("#loginName")[0].focus();
 var hasLoginName = false;
 var hasEmail = false;
 var hasVcode = false;
 $("#loginName").blur(function(){
  var reg = /^[a-zA-Z0-9_]{4,16}$/;
  if($.trim($(this).val()) == ""){
   $("#loginName_msg").html("<font color='red'>登录帐号不能为空!</font>");
  }
  else if(!reg.test($(this).val())){
   $("#loginName_msg").html("<font color='red'>登录帐号只能由字母或数字组成!</font>");
   $("#loginName")[0].select();
  }else if($.trim($(this).val()).length<6){
   $("#loginName_msg").html("<font color='red'>帐号长度在6-16之间!</font>");
  }else{
   $.ajax({
    type:"post",
    url:"infor.do?op=doCheckLoginName",
    data:"loginName="+$.trim($("#loginName").val()),
    success:function(res){
     if(res == "exist"){
      $("#loginName_msg").html("<font color='red'>该登录帐号已被注册!</font>");
      $("#loginName")[0].select();
     }else{
      hasLoginName = true;
      $("#loginName_msg").html("<font color='blue'>登录帐号可用!</font>");
     }
    }
   });
  }
 });
 
 $("#passWord").blur(function(){
  var regPass = /^[a-zA-Z0-9_]{4,16}$/;
  if($.trim($(this).val()) == ""){
   $("#passWord_msg").html("<font color='red'>登录密码不能为空!</font> ");
  }
  else if(!regPass.test($(this).val())){
   $("#passWord_msg").html("<font color='red'>请输入字母、数字组成的密码!</font>");
   $("#passWord")[0].select();
  }else if($.trim($(this).val()).length<6){
   $("#passWord_msg").html("<font color='red'>密码长度在6-16之间!</font>");
  }else{
   $("#passWord_msg").html("<font color='blue'>登录密码输入完成!</font>");
  }
 });
 
 $("#email").blur(function(){
  var regMail = /^/w+([-+.]/w+)*@/w+([-.]/w+)*/../w+([-.]/w+)*$/;
  if($.trim($(this).val()) == ""){
   $("#email_msg").html("<font color='red'>邮箱不能为空!</font>");
  }
  else if(!regMail.test($(this).val())){
   $("#email_msg").html("<font color='red'>请输入正确的邮箱!</font>");
  }else{
   $.ajax({
    type:"post",
    url:"infor.do?op=doCheckEmail",
    data:"email="+$.trim($("#email").val()),
    success:function(res){
     if(res == "exist"){
      $("#email_msg").html("<font color='red'>该邮箱已被注册!</font>");
     }else{
      hasEmail = true;
      $("#email_msg").html("<font color='blue'>邮箱可用!</font>");
     }
    }
   });
  }
 });
 $("#mobile").blur(function(){
  var regphone = /^[1][3,5,8][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]$/;
  if($.trim($("#mobile").val()) == ""){
   $("#mobile_msg").html("<font color='red'>联系手机号码不能为空!</font>");
  }else if(!regphone.test($("#mobile").val())){
   $("#mobile_msg").html("<font color='red'>请输入正确的联系手机号码!</font>");
  }else{
   $("#mobile_msg").html("<font color='blue'>格式填写正确!</font>");
  }
 });
 /**
 $("#phone").blur(function(){
  var regphone = /^(0[0-9]{2,3}/-)?([2-9][0-9]{6,7})+(/-[0-9]{1,4})?$/;
  if($.trim($("#phone").val()) != ""){
   if(!regphone.test($("#phone").val())){
    $("#phone_msg").html("<font color='red'>请输入正确的联系电话!</font>");
   }else{
    $("#phone_msg").html("&nbsp;");
   }
  }else{
    $("#phone_msg").html("&nbsp;");
   }
 });
 */
 $("#nickName").blur(function(){
  if($.trim($(this).val()) == ""){
   $("#nickName_msg").html("<font color='red'>网站昵称不能为空!</font>");
  }else {
   var notAllowChar=['~','!','`','@','#','$','%','^','&','*',')','(','-','+','/'','"',',','.','//','<','>','/',':',';','?'];
   for(var i=0;i<notAllowChar.length;i++){
    if($.trim($(this).val()).indexOf(notAllowChar[i])>=0) {
     $("#nickName_msg").html("<font color='red' >网站昵称不能包含字符</font>"+notAllowChar[i]);
     $("#nickName")[0].select();
     break;
    }else{
     $("#nickName_msg").html("<font color='blue'>该昵称可用!</font>");
    }
   }
  }
 });
 $("#vcode").blur(function(){
  if($.trim($(this).val()) == ""){
   $("#vcode_msg").html("<font color='red'>请输入图片中的字母或者数字!</font>");
   $("#vcode")[0].select();
  }else {
   $("#vcode_msg").html("<font color='blue'>验证码输入完成!</font>");
  }
 });
 
 $("#regfrm").submit(function(){
     var regmoblie = /^[1][3,5,8][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]$/;
  var checked = $("#agreement:checked");
  var reg = /^[a-zA-Z0-9_]{4,16}$/;
  var regMail = /^/w+([-+.]/w+)*@/w+([-.]/w+)*/../w+([-.]/w+)*$/;
  if($.trim($("#loginName").val()).length < 6){
   $("#loginName_msg").html("<font color='red'>帐号不能为空,字符长度在6-16之间!</font>");
   $("#loginName")[0].focus();
   return false;
  }else if(!reg.test($("#loginName").val())){
   $("#loginName_msg").html("<font color='red'>登录帐号只能由字母或数字组成!</font>");
   $("#loginName")[0].select();
   return false;
  }else if($.trim($("#nickName").val()) == ""){
   $("#nickName_msg").html("<font color='red'>网站昵称不能为空!</font>");
   $("#nickName")[0].focus();
   return false;
  }else if(!reg.test($("#passWord").val())){
   $("#passWord_msg").html("<font color='red'>请输入字母、数字组成的密码!</font>");
   $("#passWord")[0].select();
   return false;
  }else if($.trim($("#passWord").val()).length < 6){
   $("#passWord_msg").html("<font color='red'>密码长度在6-16之间!</font>");
   $("#passWord")[0].select();
   return false;
  }else if($.trim($("#email").val()) == ""){
   $("#email_msg").html("<font color='red'>邮箱不能为空!</font>");
   $("#email")[0].focus();
   return false;
  }else if(!regMail.test($("#email").val())){
   $("#email_msg").html("<font color='red'>请输入正确的邮箱!</font>");
   $("#email")[0].select();
   return false;
  }else if(!hasLoginName){
  $.ajax({
    type:"post",
    url:"infor.do?op=doCheckLoginName",
    data:"loginName="+$.trim($("#loginName").val()),
    success:function(res){
     if(res == "exist"){
      $("#loginName_msg").html("<font color='red'>该登录帐号已被注册!</font>");
      $("#loginName")[0].select();
     }
    }
   });
  }else if(!hasEmail){
   $.ajax({
     type:"post",
     url:"infor.do?op=doCheckEmail",
     data:"email="+$.trim($("#email").val()),
     success:function(res){
      if(res == "exist"){
       $("#email_msg").html("<font color='red'>该邮箱已被注册!</font>");
       $("#email")[0].select();
       return false;
      }
     }
    });
  }else if($.trim($("#mobile").val())== ""){
    $("#mobile_msg").html("<font color='red'>联系手机不能为空!</font>");
    $("#mobile")[0].focus();
   return false;
  }else if(!regmoblie.test($("#mobile").val())){
    $("#mobile_msg").html("<font color='red'>请输入正确的联系手机号码!</font>");
    $("#mobile")[0].select();
    return false;
  }else if($.trim($("#vcode").val())==""){
    $("#vcode_msg").html("<font color='red'>请输入图片中的字母或者数字!</font>");
    $("#vcode")[0].focus();
    return false;
  }else if(checked.length<1){
    alert('必须接受《用户服务协议》,方可注册!');
    return false;
  }else{
  if(!hasVcode){
        $.ajax({
      type:"post",
      url:"infor.do?op=doCheckVcode",
      data:"vcode="+$.trim($("#vcode").val()),
      success:function(data){
       if(data != "ok"){
        $("#vcode_msg").html("<font color='red'>验证码输入错误!</font>");
        $("#vcode")[0].focus();
        $("#vcode").val('');
        refreshCode();
        return false;
       }else{
        if($.trim($("#nickName").val()) != ""){
         $("#nickName_msg").html("<font color='red'></font>");
         var notAllowChar=['~','!','`','@','#','$','%','^','&','*',')','(','-','+','/'','"',',','.','//','<','>','/',':',';','?'];
         for(var i=0;i<notAllowChar.length;i++){
          if($.trim($("#nickName").val()).indexOf(notAllowChar[i])>=0) {
         $("#nickName_msg").html("<font color='red' >网站昵称不能包含字符</font>"+notAllowChar[i]);
         $("#nickName")[0].select();
         return false;
          }
      }
       $("#regfrm")[0].submit();
     }
       }
      }
     });
    }
  }
  return false;
 });
 
});
 function refreshCode() {
       var codepic = document.getElementById("codepic");
       var time = new Date().getTime();
       codepic.setAttribute("src","common/validate/vcode.jsp?time=" + time);
    }

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
  <head>
    <base href="<%=basePath%>">
   
    <title>会员注册 - 中天房地产网</title>
 <meta http-equiv="pragma" content="no-cache">
 <meta http-equiv="cache-control" content="no-cache">
 <meta http-equiv="expires" content="0">   
 <meta http-equiv="keywords" content="注册会员,金牌会员,最新房源">
 <meta http-equiv="description" content="注册网站会员">
 
 <link rel="stylesheet" type="text/css" href="reg/css/reg.css">
 <script type="text/javascript" src="common/javascript/library.js"></script>
 <script type="text/javascript" src="reg/javascript/index.js"></script>
 
  </head>
 
  <body>
   <div class="frame"> <jsp:include page="/common/head.jsp"></jsp:include></div>
 
    <div class="main-frame">
     <div class="position">
       <p class="p-text">
        你所在的位置:<a>首页</a> - <b>会员注册</b>
       </p>
     </div>
     <div class="left-frame member">
     <form action="infor.do?op=doRegister" method="post" name="regfrm" id="regfrm">
      <table class="regfrm" cellpadding="0" cellspacing="0" border="0">
       <tr>
        <td class="label" align="right">
         登录帐号:
        </td>
        <td>
         <input type="text" class="TextBox" maxlength="16" id="loginName" name="loginName"  />
         <span id="loginName_msg" class="trip"> 请输入你的帐号!</span>
        </td>
       </tr>
       <tr>
        <td class="label" align="right">
         网站昵称:
        </td>
        <td>
         <input type="text" class="TextBox" maxlength="8" id="nickName" name="nickName" />
         <span  id="nickName_msg" class="trip">请输入你的昵称!</span>
        </td>
       </tr>
       <tr>
        <td class="label" align="right">
         登录密码:
        </td>
        <td>
         <input type="password" class="TextBox" maxlength="16" id="passWord" name="passWord" />
         <span class="trip" id="passWord_msg">请输入你的登录密码!</span>
        </td>
       </tr>
       
       <tr>
        <td class="label" align="right">
         电子邮箱:
        </td>
        <td>
         <input type="text" class="TextBox"  id="email" name="email" />
         <span class="trip" id="email_msg">请输入你常用的邮箱!</span>
        </td>
       </tr>
       <tr>
        <td class="label" align="right">
         手机号码:
        </td>
        <td>
         <input type="text" class="TextBox" maxlength="16" id="mobile" name="mobile" />
         <span id="mobile_msg" class="trip">请输入你联系手机!</span>
        </td>
       </tr>
       <tr>
        <td class="label" align="right">
         固定电话:
        </td>
        <td>
         <input type="text" class="TextBox" maxlength="16"  id="phone" name="phone" />
         <span id="phone_msg">选填</span>
        </td>
       </tr>
       <tr>
        <td class="label" align="right">
         QQ&nbsp;号&nbsp;码:
        </td>
        <td>
         <input type="text" class="TextBox" maxlength="16" id="qq" name="qq" />
         <span  id="qq_msg">选填</span>
        </td>
       </tr>
       <tr>
        <td class="label" align="right">
         验&nbsp;证&nbsp;码:
        </td>
        <td>
         <input type="text" name="vcode" id="vcode" size="4" value="" class="TextBox" style="width:40px;"  maxlength="4"/>
      <img src="common/validate/vcode.jsp" style="cursor:pointer"
       name="codePic" id="codePic" onclick="javascript:refreshCode()" /> <span class="trip" id="vcode_msg">请输入图片中的字母或者数字!</span>
        </td>
       </tr>
       <tr>
        <td class="label" align="right">
         &nbsp;
        </td>
        <td>
         <input type="checkbox" checked="checked" id="agreement"  name="agreement"/> 我已阅读并接受《<a href="about/user_agreement.jsp" target="_blank">用户服务协议</a>》
        </td>
       </tr>
       <tr>
        <td class="label" align="right">
         &nbsp;
        </td>
        <td>
         <input type="submit" value="确认注册" class="btn" /> &nbsp; <a href="infor.do?op=toRegBroker">注册经纪人</a>
        </td>
       </tr>
      </table>
      </form>
     </div>
     <%-- right --%>
     <div class="right-frame">
      <img src="reg/images/pic.gif"></img>
      <p>加入我们,成为我们网站一份,注册成为会员</p>
      <p>可以让人更快知道你  更容易在网上找到你</p> 
      <p>我们是一个家知户晓的网络地产中介广告平台</p> 
      <p>你们在这发布的房源可以让人搜索到</p>  
     </div>
    </div>
    <div class="frame"> <jsp:include page="/common/foot.jsp"></jsp:include></div>
  </body>
</html>

原创粉丝点击