失败消息未出现在表单验证事件中

时间:2016-08-14 09:04:43

标签: javascript validation

我正在尝试制作一条失败消息,根据提交时的错误将不同的字符串加在一起。但是,如果满足条件,则不会显示失败消息。 我想知道我的代码中的错误在哪里。谢谢。

这是一个链接到HTML文档的外部JavaScript文件。

 function validationEvent() {
    var flag = true;
    var alertmsg = "There were errors found in your registration:";
    var givenname = document.getElementById("gname").value;
    var surname = document.getElementById("sname").value;
    var address = document.getElementById("address1").value;
    var city = document.getElementById("city").value;
    var pcode = document.getElementById("pcode").value;
    var email = document.getElementById("email").value;
    var phone = document.getElementById("phone").value;
    var cnum = document.getElementById("cnum").value;
    if (givenname == null || givenname == "") {
        alertmsg += " Given Name is a mandatory field.";
        flag = false;

    }
    if (surname == null || surname == "") {
        alertmsg += " Surname is a mandatory field.";
        flag = false;

    }
    if (address == null || address == "") {
        alertmsg += " Address is a mandatory field.";
        flag = false;
        }
    if (city == null || city == "") {
        alertmsg += " City is a mandatory field.";
        flag = false;
         }
    if (pcode == null || pcode == "") {
        alertmsg += " Postal Code is a mandatory field.";
        flag = false;
         } 
    if (email == null || email == "") {
        alertmsg += " Email is a mandatory field.";
        flag = false;
         }
    if (phone == null || phone == "") {
        alertmsg += " Phone Number is a mandatory field.";
        flag = false;
         }
    if (cnum == null || cnum == "") {
       alertmsg += " Credit Card Number is a mandatory field.";
        flag = false;
          }
    if (!vormCredit()) {
        alertmsg += " Visa Cards must start with 4 and Mastercard Cards must start with 5.";
        flag = false;

    }
    if (!stateCheck()) {
        alertmsg += " Invalid Postal Code.";
        flag = false;

    }
    if (!checkCredit()) {
        alertmsg += " Invaid Credit Card Number.";
        flag = false;

    }
    if (!flag) {
        alert(alertmsg);
         return false;}

    else {
        alert("Thank you for your subcription.");
        return true;}


    };

编辑:从'if'循环中删除'return false'并将其仅添加到if(!标志)循环中。

1 个答案:

答案 0 :(得分:0)

最好在此处使用switch语句。当你有更多案件时它会处理这种情况。您也可以使用break