前几天,在校验一个表单数据用到ajax时,遇到 return false 无效问题,以下就是对这个问题进行了分析介绍,需要的朋友可以参考下
/** * 表单提交校验 **/ function onSubmit(){ if($('#name').val().length<2){ alert("名称请不少于两个汉字"); return false; } var t = new Date().getTime(); $.ajax({ type: "POST", url: "/users/checkrepeat/", data: "name=" + $('#name').val() + "&time=" + t, success:function(res){ if(res == 'exists'){ alert("名称已存在,请修改."); return false; } } }); }
修改后的代码:
/** * 表单提交校验 **/ function onSubmit(){ if($('#name').val().length<2){ alert("名称请不少于两个汉字"); return false; } var flag = true; var t = new Date().getTime(); $.ajax({ type: "POST", async:false, // 设置同步方式 cache:false, url: "/users/checkrepeat/", data: "name=" + $('#name').val() + "&time=" + t, success:function(res){ if(res == 'exists'){ alert("名称已存在,请修改."); flag = false; } } }); if(!flag) return false;