//Controller le nom et prenom
NomPrenom = document.F1.T1.value;
if(NomPrenom === "") {
alert('Le champ Nom et Prenom ne doit pas être vide');
}
NomPrenomArray = NomPrenom.split("");
for (i=0; i<=NomPrenomArray.length; i++) {
if (isNaN(NomPrenomArray[i]) === false) {
alert("Nom et Prenom doit être une chaine");
}
}
//controller l'âge
Age = document.F1.T2.value;
if(Age === "") {
alert("le champ age est obligatoire");
}
if(isNaN(Age) === true) {
alert("le champ age doit être un valeur numerique seulement");
}
if((Age<20) || (Age>30)) {
alert("l'age doit être supérieur ou egale a 20 et inférieur ou egale a 30");
}
如果一个条件为假,它将继续显示其他条件。
如何避免这种情况(例如name input == ""
)然后它将显示第一个警报和第二个警报等...
但我希望它只能在虚假警报下停止,你能帮忙并感谢你!
答案 0 :(得分:0)
解决这个问题的一种方法是将所有代码放在一个函数中,并在想要排除其余代码时添加return
:
//Controller le nom et prenom
function validate() {
var NomPrenom = document.F1.T1.value; // Declare!
if (NomPrenom == "") {
alert('Le champ Nom et Prenom ne doit pas être vide');
return;
}
var NomPrenomArray = NomPrenom.split(""); // Declare!
for (var i=0; i<=NomPrenomArray.length; i++) { // Declare i!!
if (!isNaN(NomPrenomArray[i])) { // Use `!`
alert("Nom et Prenom doit être une chaine");
return;
}
}
//controller l'âge
var Age = document.F1.T2.value; // Declare
if (Age == "") {
alert("le champ age est obligatoire");
return;
}
if (isNaN(Age)) { // No need for `== true`
alert("le champ age doit être un valeur numerique seulement");
return;
}
if (Age<20 || Age>30) {
alert("l'age doit être supérieur ou egale a 20 et inférieur ou egale a 30");
return;
}
return true; // All OK
}
然后确保在正确的位置调用此函数:
validate();
注意:alert
s真的不是用户友好的。考虑在页面本身输出错误消息,可能是红色,在具有验证错误的input
元素附近。
答案 1 :(得分:0)
您可以使用以下内容:
boolean default = false;
while(!default) {
/*
* all your logic will go here and then
* make it as true, where you want to break it
*/
default = true;
}
答案 2 :(得分:0)
这应该有效:
function verif1() {
NomPrenom = document.F1.T1.value;
NomPrenomArray = NomPrenom.split("");
Age = document.F1.T2.value;
//Controller le nom et prenom
if (NomPrenom == "") {
alert('Le champ Nom et Prenom ne doit pas être vide');
} else if {
for (i = 0; i <= NomPrenomArray.length; i++) {
if (isNaN(NomPrenomArray[i]) == false) {
alert("Nom et Prenom doit être une chaine");
}
} else if (Age == "") {
alert("le champ age est obligatoire");
} else if (isNaN(Age) == true) {
alert("le champ age doit être un valeur numerique seulement");
} else if ((Age < 20) || (Age > 30)) {
alert("l'age doit être supérieur ou egale a 20 et inférieur ou egale a 30");
}
}
}