$.ajax请求做登陆校验,执行完beforeSend,原地刷新页面。后台controller正常执行,但无法接收到后台响应

$.ajax请求做登陆校验,执行完beforeSend,原地刷新页面。后台controller正常执行,但无法接收到后台响应

$.ajax,仅执行beforeSend,未执行complete,未进入success/error的function。
登陆的ajax请求。

<script>
        function register() {
            var user = new Object();
            user.Uname=$.trim($("#rusername").val());    //$.trim() 函数用于去除字符串两端的空白字符。
            user.Upwd=$.trim($("#rpassword").val());
            $.ajax({
                type:'POST',
                url:'/ajax/register',
                data:{ObjectUser:JSON.stringify(user)},//以JSON字符串形式把user传到后台
                async:true,
                dataType:'text',//后台返回的数据类型是html文本
                timeout:1000,   //请求超时时间(ms)
                beforeSend:function(){
                    //请求前的处理
                    // alert("sending")
                },
                success:function(req){
                    //请求成功时处理
                    if (req != "" && req == "success"){
                        alert("注册成功!")
                        $("#refresh").empty();
                        $("#refresh").append("<h1>请登录</h1>\n" +
                            "\t\t\t\t\t<div class=\"head\">\n" +
                            "\t\t\t\t\t\t<img src=\"images/user.png\" alt=\"\"/>\n" +
                            "\t\t\t\t\t</div>\n" +
                            "\t\t\t\t<form>\n" +
                            "\t\t\t\t\t\t<input type=\"text\" placeholder=\"用户名\" class=\"text\" id=\"username\" >\n" +
                            "\t\t\t\t\t\t<input type=\"password\" placeholder=\"密码\" id=\"password\">\n" +
                            "\t\t\t\t\t\t<div class=\"submit\">\n" +
                            "\t\t\t\t\t\t\t<input type=\"submit\" οnclick=\"login()\" value=\"LOGIN\" >\n" +
                            "\t\t\t\t\t</div>\t\n" +
                            "\t\t\t\t\t<p><a href=\"/register\">我要注册</a></p>\n" +
                            "\t\t\t\t</form>")
                    }else{
                        alert("注册失败");
                        $("#rusername").val('');
                        $("#rpassword").val('');
                        $("#repassword").val('');
                    }
                },
                complete:function(){
                    //请求完成的处理
                    // alert("complete")
                },
                error:function(){
                    //请求出错处理
                    alert("请求出错...")
                }
            })
        }
    </script>

登录的页面代码

<div class="main">
    <h1 id="change"></h1>
    <div class="login-form" id="refresh">
        <h1>欢迎注册</h1>
        <form>
            <input type="text" id="rusername" class="text" placeholder="请输入用户名"><span id="namemsg"></span>
            <input type="password" id="rpassword" placeholder="请输入密码"><span id="pwdmsg"></span>
            <input type="password" id="repassword" placeholder="请确认密码"><span id="repwdmsg"></span>
            <div class="submit">
<!--                <button onclick="register()" id="regbtn" value="注册"></button>-->
<!--                <button onclick="register()" value="注册" id="regbtn" style="height: 30px; width: 60px" class="btn btn-success">注册</button>-->
                <input type="submit" onclick="register()" value="注册" id="regbtn">
            </div>
            <p><a href="/toLogin">去登陆</a></p>
        </form>
    </div>
</div>

原因是form标签,因为拿的模版,form标签也没id,没属性的,就完全没有注意到。在from里面做提交之类的方法。拿来度娘的form标签介绍来学习一哈

表单标签
<form></form>
功能:用于申明表单,定义采集数据的范围,也就是<form></form>里面包含的数据将被提交到服务器或者电子邮件里。
语法:<FORM ACTION="URL" METHOD="GET|POST" ENCTYPE="MIME" TARGET="...">. . .</FORM>

虽然我form表单里没有属性,但点按钮的时候那个动作,启动ajax请求,form表单也会进行一次提交。
结果就是ajax请求发出去了,form表单也提交了,但因为form表单没有属性,就像<a href="#"></a>一样,原地刷新了一下,但是跑到一半的ajax请求就傻*了,,这tm什么情况!!嗯,,,把form标签前后删掉即可解决。。
哎,,看了我半小时还以为受到哪个绑定事件的影响。吃一堑长一智,,,哈哈哈哈哈哈哈哈

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值