网络编程 
首页 > 网络编程 > 浏览文章

基于jQuery实现表单提交验证

(编辑:jimmy 日期: 2026/3/5 浏览:3 次 )

html表单代码:
复制代码 代码如下:
   <form method="post" action="">
       <div class="int">
          <label for="username">用户名:</label>
          <input type="text" id="username" class="required"/>
       </div>
       <div class="int">
           <label for="username">邮箱:</label>
           <input type="text" id="email" class="required"/>
       </div>
       <div class="int">
           <label for="username">个人资料:</label>
           <input type="text" id="personinfo"/>
       </div>
       <div class="sub">
           <input type="submit" value="提交" id="send"/>
           <input type="reset" id="res"/>
       </div>
   </form> 

jQuery代码:
复制代码 代码如下:
          $(function(){
            $("form :input.required").each(function(){
                var $required = $("<strong class='high'>*</strong>");
                //$(this).parent().append($required);  //追加到文档中
                $(this).parent().prepend($required);
            });
            $('form :input').blur(function(){
                var $parent = $(this).parent();
                if($(this).is('#username')){
                   if(this.value==""||this.value.length<6){
                      var errorMsg = '请输入至少6位的用户名';
                      $parent.append('<span class="formtips onError">'+errorMsg+'</span>');
                   }else{
                       var okMsg = '输入正确';
                       $parent.append('<span class="formtips onSuccess">'+okMsg+'</span>');
                   }
                }
                if($(this).is('#email')){
                    if(this.value==""||(this.value!=""&&!/.+@.+\.[a-zA-Z]{2,4}$/.test(this.value))){
                        var errorMsg = '请输入正确的E-mail地址';
                        $parent.append('<span class="formtips onError">'+errorMsg+'</span>');
                    }else{
                        var okMsg = '输入正确';
                        $parent.append('<span class="formtips onSuccess">'+okMsg+'</span>');
                    }
                }
            });
            $("form :input").focus(function(){
                var $parent = $(this).parent();
                $parent.find(".formtips").remove();
            });
            $("#send").click(function(){
               var $parent = $(this).parent().parent();
               $parent.find(".formtips").remove();
               $("form .required:input").trigger('blur');
               var numError = $('form .onError').length;
               if(numError){
                  return false;
               }
            });
            $("#res").click(function(){
                var $parent = $(this).parent().parent();
                $parent.find(".formtips").remove();
            });
        });

代码很简单,也很易懂,小伙伴们直接拿走用吧,这里就不详细说明了。

上一篇:基于jQuery实现下拉框
下一篇:jQuery简单实现网页选项卡特效
一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。