用ajax提交表单自动刷新问题以及req.getParameter取不到值的问题

采用jquery和ajax提交表单到servlet,但是在实现回传函数后自动刷新了页面。

//初始代码
$("#registerForm").submit(function(){
					//1.发送数据到服务器
					if(checkUsername() && checkPassword() && checkEmail()){
					    //校验通过,发送ajax请求,提交表单的数据   username=zhangsan&password=123

						$.post("registUserServlet",$(this).serialize(),function(data){
							//处理服务器响应的数据  data  {flag:true,errorMsg:"注册失败"}

							if(data.flag){
							    //注册成功,跳转成功页面
								location.href="register_ok.html";
							}else{
							    //注册失败,给errorMsg添加提示信息
								$("#errorMsg").html(data.errorMsg);

							}
						});

					}
					//2.不让页面跳转
                    return false;
                    //如果这个方法没有返回值,或者返回为true,则表单提交,如果返回为false,则表单不提交
				});

这里我一开始return false没有用 ,所以把submit按钮改成了Button。后面发现自己return false的位置出错了。

<input type="button" class="submit" id="submit" value="注册">

接着改aja代码


            $("#submit").click(function(){
           //     function tijiao() {
                    if (checkusername() && checkpassword() && checkemail()) {
                       alert("aaa");
                        $.post("registUserServlet",$(this).serialize(),function(data){
                            //处理服务器响应的数据  data  {flag:true,errorMsg:"注册失败"}
                            alert("bbb");
                            if (data.flag) {
                                //注册成功,跳转成功页面
                                location.href = "register_ok.html";
                            } else {
                                alert("ax");
                                //location.reload(false);
                                //注册失败,给errorMsg添加提示信息
                                $("#ErrorMsg").html(data.errorMsg);
                                //return false;返回的位置放错了
                            }
                        },"json");
                    }
              //  }
            alert("fads");
           // $("#registerForm").submit(tijiao);
     })
});

直接在function中放ajax就可以,不需要写KaTeX parse error: Expected 'EOF', got '#' at position 3: ("#̲registerForm").…("#registerForm").submit(function(){}。
这个时候能提交也不刷新了,但是req.getParameter(“check”)取不到值,后台 System.out.println(check);显示的是null。
检查代码,因为是用按钮提交,$(this).serialize()不能再用了。

  alert($("#registerForm").serialize());
                        $.post("registUserServlet",$("#registerForm").serialize(),function(data){}

改成$("#registerForm").serialize()即可

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值