ajax 验证验证码错误,无法阻止表单提交
jsp代码:<formaction="cookies.jsp"method="post"id="reg"onclick="returnvalidation()"><div...
jsp 代码:
<form action="cookies.jsp" method="post" id="reg" onclick="return validation() ">
<div class="login">
<input type="text" placeholder="手机号/邮箱" name="user" id="user"
class="text" /> <input type="password" name="password" class="text"
placeholder="密码" /> <input type="text" placeholder="请输入验证码"
class="code" name="code" id="checkcode" onchange="validation()" /> <a
href="javascript:;" onclick="changeImg()"> <img src="image.do"
id="image" />
</a>
<input type="submit" value="登 录" class="btn" /> <input type="submit"
value="注 册" class="btn" />
</div>
</form>
javascript ajax认证代码:
function validation() {
$.ajax({
type : "post",
data : {
"checkcode" : $("#checkcode").val()
},
url : "ResultServlet",
success : function(data) {
if (data == "blank") {
$("#codemsg").html("验证码不能空").fadeOut(3000);
return false;
}
if (data == "error") {
$("#codemsg").html("验证码错误")
.fadeOut(3000);
return false;
}
if (data == "success") {
$("#codemsg").html("验证码正确");
return true;
}
}
});
求各位大神指点迷津小弟,在此感激不尽 展开
<form action="cookies.jsp" method="post" id="reg" onclick="return validation() ">
<div class="login">
<input type="text" placeholder="手机号/邮箱" name="user" id="user"
class="text" /> <input type="password" name="password" class="text"
placeholder="密码" /> <input type="text" placeholder="请输入验证码"
class="code" name="code" id="checkcode" onchange="validation()" /> <a
href="javascript:;" onclick="changeImg()"> <img src="image.do"
id="image" />
</a>
<input type="submit" value="登 录" class="btn" /> <input type="submit"
value="注 册" class="btn" />
</div>
</form>
javascript ajax认证代码:
function validation() {
$.ajax({
type : "post",
data : {
"checkcode" : $("#checkcode").val()
},
url : "ResultServlet",
success : function(data) {
if (data == "blank") {
$("#codemsg").html("验证码不能空").fadeOut(3000);
return false;
}
if (data == "error") {
$("#codemsg").html("验证码错误")
.fadeOut(3000);
return false;
}
if (data == "success") {
$("#codemsg").html("验证码正确");
return true;
}
}
});
求各位大神指点迷津小弟,在此感激不尽 展开
1个回答
2014-11-18 · 知道合伙人软件行家
关注
展开全部
success:function(data){ //code }
这里的函数是ajax请求成功之后执行的,你在这里放表单验证肯定是永远不能阻止表单提交的
把这里面的代码提到$.ajax()前面即可。。。
而且,我感觉你这里提交到后台是为了验证数据有效性,我觉得你可以现在前台用js验证一遍,成功后进行ajax请求,提交数据到后台,后台再验证一次,后台验证成功直接进行数据操作即可,不用再返回验证结果了,当然如果后台验证没通过,也要返回表单错误
这里的函数是ajax请求成功之后执行的,你在这里放表单验证肯定是永远不能阻止表单提交的
把这里面的代码提到$.ajax()前面即可。。。
而且,我感觉你这里提交到后台是为了验证数据有效性,我觉得你可以现在前台用js验证一遍,成功后进行ajax请求,提交数据到后台,后台再验证一次,后台验证成功直接进行数据操作即可,不用再返回验证结果了,当然如果后台验证没通过,也要返回表单错误
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询