if语句返回true,不检查所有if语句-javascript
嗨,当逐个测试时,我的所有代码都工作得很好,但是当我将它们全部插入时,如果达到第一个if语句,它将返回true并提交表单,而不验证其他语句。。有人能告诉我如何更改代码,以便在返回true之前运行所有IF语句吗 这是我的密码if语句返回true,不检查所有if语句-javascript,javascript,Javascript,嗨,当逐个测试时,我的所有代码都工作得很好,但是当我将它们全部插入时,如果达到第一个if语句,它将返回true并提交表单,而不验证其他语句。。有人能告诉我如何更改代码,以便在返回true之前运行所有IF语句吗 这是我的密码 if (this.element.find('#visitdate').length > 0) { var dateParts = $('#tvisitdate').val().split('/'); var check = new Date(d
if (this.element.find('#visitdate').length > 0) {
var dateParts = $('#tvisitdate').val().split('/');
var check = new Date(dateParts[2], dateParts[1]-1, dateParts[0], 0,0,0,0);
var d = new Date();
var today = new Date(d.getFullYear(), d.getMonth(), d.getDate());
if (today.getTime() > check.getTime() ) {
_errMsg = "Please enter a future visit date";
return false;
} else {
return true;
}
}
if (this.element.find('#birthdate').length > 0) {
var dateParts1 = $('#birthdate').val().split('/');
var check1 = new Date(dateParts1[2], dateParts1[1]-1, dateParts1[0], 0,0,0,0).getFullYear();
var today1 = new Date();
var year = today1.getFullYear();
if (check1 >= year) {
_errMsg = "Please enter a valid date of birthday";
return false;
} else {
return true;
}
}
使用布尔(真/假)变量,然后在代码末尾返回该变量。这样,您只有一条返回语句:
var check_no_error = true;
if (this.element.find('#visitdate').length > 0) {
var dateParts = $('#tvisitdate').val().split('/');
var check = new Date(dateParts[2], dateParts[1]-1, dateParts[0], 0,0,0,0);
var d = new Date();
var today = new Date(d.getFullYear(), d.getMonth(), d.getDate());
if (today.getTime() > check.getTime() ) {
_errMsg = "Please enter a future visit date";
check_no_error = false;
}
}
if (this.element.find('#birthdate').length > 0) {
var dateParts1 = $('#birthdate').val().split('/');
var check1 = new Date(dateParts1[2], dateParts1[1]-1, dateParts1[0], 0,0,0,0).getFullYear();
var today1 = new Date();
var year = today1.getFullYear();
if (check1 >= year) {
_errMsg = "Please enter a valid date of birthday";
check_no_error = false;
}
}
return check_no_error;
您不应该对每个if条件使用return,在这种情况下,最好为first if指定一个布尔值,无论是true还是false。如果值为true,则处理第二个if条件,并根据条件将值更改为true或false,并在最后一个条件中返回此值。您会没事的。缩进代码,然后出现解决方案。您能给我一个代码示例吗…基本
if
用法。。。第一个嵌套if返回true或false,因此在第二个嵌套if之前退出。