带警报的表单错误验证

时间:2016-09-27 00:17:44

标签: javascript forms

我有一个函数,如果表单未填写“错误已发生”,将返回警报,如果所有字段都已完成,则警报为“表单已成功提交”。我的问题是,如果有错误,则警告“错误已经发生”触发,当我填写不完整的字段并提交表单时,“错误已经发生”再次触发,因为它已经存在于页面上。如何忽略已经警告的当前错误或清除当前错误警报,以便我可以尝试再次验证表单?

非常感谢任何帮助。

这是我在Salesforce Pardot中构建的表单测试页:http://go.esri.com/l/82202/2016-05-09/2jzdrk

<script>
function submitVerify() {
    var formError = document.querySelector("#pardot-form .errors").innerHTML;

    if (formError === "Please correct the errors below:") {
        alert("error has occured");
    } else {
        alert("Form submitted successfully");
    }
}
</script>

1 个答案:

答案 0 :(得分:1)

在提示出现错误之前,清空错误字段,如下所示:

<script>
function submitVerify() {
    var formError = document.querySelector("#pardot-form .errors").innerHTML;

    if (formError === "Please correct the errors below:") {
        alert("error has occured");

        // <=== reset error message here
        document.querySelector("#pardot-form .errors").innerHTML = null;
    } else {
        alert("Form submitted successfully");
    }
}
</script>