ajax post请求

ajax post请求遇见的坑
当按钮类型是submit时,ajax post会提交2次,第一次是post,第二次是get,感觉是post没有生效

 <script>
        function login(e){
             e.preventDefault();//会阻止一次,但是阻止得是post请求,如果不阻止会请求2次
            var formData=$('#login_form').serialize();
            $.ajax({
                type:'POST',
                url:'/user/login',
                data:formData,
                dataType:"json",
                success:function(data){
                    console.log(data);
                   var err_code=data.err_code;
                   alert(data.msg);
                }
            })
        }
      
    </script>
    <input type="submit" class="btn btn-success pull-right" onclick="login(this)" value="登录 "/> 

解决最直接办法是把按钮类型换成button

<script>
        function login(){
            var formData=$('#login_form').serialize();
            $.ajax({
                type:'POST',
                url:'/user/login',
                data:formData,
                dataType:"json",
                success:function(data){
                    console.log(data);
                   var err_code=data.err_code;
                   alert(data.msg);
                }
            })
        }
      
    </script>
<input type="button" class="btn btn-success pull-right" onclick="login()" value="登录 "/>

猜你喜欢

转载自www.cnblogs.com/zwgblogs/p/11290895.html