0

我正在使用 javascript 进行表单验证,但在提交并且返回 false 的代码后,表单仍然提交。我在找到的其他主题中使用了“修复”,但表单仍然提交。

这是我的代码:

function CheckFormi() {
    var lh = document.getElementById('op').value;
    var ph = document.getElementById('oc').value;
    var lb = document.getElementById('dp').value;

    if (lh == "País" || ph == "Codiga postal" || lb == "País") {
        if (lf == "País") {
            document.getElementById('op').style.border = "solid 1px #FF0000";
        }
        if (ph == "Codiga postal") {
            document.getElementById('oc').style.border = "solid 1px #FF0000";
        }
        if (lb == "País") {
            document.getElementById('dp').style.border = "solid 1px #FF0000";
        }
        alert('error');
        return false;
    } else {
        document.getElementById('a').submit();
    }
}

这就是我调用函数的方式:

<form action="processor.php" method="post" id="a" onsubmit="return CheckFormi()">\

任何帮助将不胜感激,

提前致谢!

4

2 回答 2

1

您在这一行有一个错误:

if (lf == "País") {

变量lf可能不存在(lh可能是?)。这可以解释为什么您的警报没有显示。

于 2013-11-02T10:36:20.830 回答
1

也许你应该使用'event.preventDefault();' 而不是'return false;'。在即,您应该使用 event.returnValue = false;。

于 2013-11-02T10:36:56.100 回答