Javascript 没有按顺序执行 if 语句
Javascript not executing if statements sequentially
我正在尝试编写一个表单验证程序。我希望它会检查所有 if 语句并最终给出真或假的结果。但它一调用就返回 true。
function validator() {
var ret = true;
fname = document.getElementById('fname').value;
newp = document.getElementById('newp').value;
if (fname == null || fname == "") {
bootbox.alert("Name is empty");
ret = ret && false;
}
if (newp.length > 0) {
bootbox.confirm("Account will be locked",
function(result) {
if (result == true) {
ret = ret && true;
} else {
ret = ret && false;
}
});
}
return ret;
}
bootbox 确认对话框不会阻止外部 "validator" 函数的执行。当确认对话框仍在显示时,该外部函数将 return。
使用 Bootstrap 对话框代码之类的东西,您确实无法实现这样的功能。您传递给确认对话框的回调函数 将被调用 ,但直到用户与对话框交互时才会调用。
我正在尝试编写一个表单验证程序。我希望它会检查所有 if 语句并最终给出真或假的结果。但它一调用就返回 true。
function validator() {
var ret = true;
fname = document.getElementById('fname').value;
newp = document.getElementById('newp').value;
if (fname == null || fname == "") {
bootbox.alert("Name is empty");
ret = ret && false;
}
if (newp.length > 0) {
bootbox.confirm("Account will be locked",
function(result) {
if (result == true) {
ret = ret && true;
} else {
ret = ret && false;
}
});
}
return ret;
}
bootbox 确认对话框不会阻止外部 "validator" 函数的执行。当确认对话框仍在显示时,该外部函数将 return。
使用 Bootstrap 对话框代码之类的东西,您确实无法实现这样的功能。您传递给确认对话框的回调函数 将被调用 ,但直到用户与对话框交互时才会调用。