我使用jquery使用ajax验证表单是否正确,然后将新密码与确认密码输入进行比较,但函数总是返回false,提交按钮不起作用所有这里的代码(来自ajax的返回数据是正确的,我已经检查过了)
function check_pwd() {
var pass = $("#oldPWD").val();
ajax = new XMLHttpRequest();
ajax.open("POST", "ajax/check_pass.php?pass=" + pass);
ajax.onreadystatechange = function () {
if (ajax.readyState == 4 && ajax.status == 200) {
result = ajax.responseText;
if (result.indexOf('wrong') !== -1) {
alert("wrong password");
return false;
} else {
return true;
}
}
}
ajax.send(null);
}
function confirmPwd() {
var pwd1 = $("#newPWD").val();
var pwd2 = $("#newPWD2").val();
if (pwd1 !== pwd2) {
alert("do not match");
return false;
} else {
return true;
}
}
function check_form() {
if (!check_pwd() || !confirmPwd()) {
return false;
} else {
return true;
}
}
答案 0 :(得分:1)
在验证旧密码验证后进行新密码验证。
function confirmPwd() {
var pwd1 = $("#newPWD").val();
var pwd2 = $("#newPWD2").val();
if (pwd1 !== pwd2) {
alert("do not match");
return false;
} else {
return true;
}
}
function check_form() {
var pass = $("#oldPWD").val();
ajax = new XMLHttpRequest();
ajax.open("POST", "ajax/check_pass.php?pass=" + pass);
ajax.onreadystatechange = function () {
if (ajax.readyState == 4 && ajax.status == 200) {
result = ajax.responseText;
if (result.indexOf('wrong') !== -1) {
alert("wrong password");
return false;
} else {
confirmPwd();
}
}
}
ajax.send(null);
if (!check_pwd() || !confirmPwd()) {
return false;
} else {
return true;
}
}