异步提交form的时候利用jQuery validate实现表单验证

本文介绍如何结合jQuery Validate插件与AJAX技术优化表单验证及提交流程,实现更好的用户体验。文中详细展示了如何配置验证规则、错误消息,并在验证成功后通过AJAX异步提交数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

利用jquery validate插件,实现这样的需求:当验证通过后,我不需要通过submit form的方式提交表单,我想要更灵活的通过ajax处理表单,加入很多动态的效果,提高客户体验

页面里引入JS文件:

<script type="text/javascript" src="common/js/jquery-1.8.3.min.js"></script>
<script type="text/javascript" src="common/js/jquery.validate.js" ></script>

<form id="formId" action="">
    
手机号码:<inputtype="text" id="cellPhone" name="cellPhone">
    
验证码:<inputtype="text" id="vaticationCode"  name="vaticationCode" >
         <input type="submit"id="submitBtn">
  </form>

 

//点击提交表单

    $("#submitBtn").click(function() {

        // 进行验证提交

        $("#firstForm").validate({

            submitHandler:function() {    //验证通过之后才去调用

                  ajaxSubmitForm();           

},

            rules:{

            cellPhone:

            {

                 isNonDefaultVal:true,

                 isPhone:true,

                 remote:{  //验证手机号是否存在

                     type: "GET",

                     url: _contextEbtPath + '/password/validateCellPhone',          

data:{

cellPhone:function(){return $("#cellPhone").val();}

                     }

                 }

            },

           vaticationCode:{

               required:true,

               remote:{  //验证短信验证码

                     type: "GET",

                     url: _contextEbtPath + '/password/validateSmsCode',          

                     data:

                     {

                      smsCode:function(){return $("#vaticationCode").val();},

                      cellPhone:function(){return $("#cellPhone").val();}

                     }

                 }

           }

       },

       messages:{

               cellPhone:{

                isNonDefaultVal:'请填写手机号',

                isPhone:"请正确填写您的电话号码",

                remote:"手机号不存在"

               },

               vaticationCode:{

                   required:"请填写验证码",

                   remote:"验证码错误"

               }

       }

        });

   

});

 

 

// 异步form提交方法

function ajaxSubmitForm() {
        var para = …;//组织参数
        var url ="/jajax/saveForm.do";
        $.ajax({
            type:"post",
            cache:false,
            dataType:"json",
            url:url,
            data:para,
            beforeSend:function(XMLHttpRequest){
                //dosomething before submit...
            },
            success:function(data, textStatus){
                //dosomething after submited...
            },
            complete:function(XMLHttpRequest, textStatus){
                //dosomething in the end...
            }
        });
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值