验证后,Javascript不会停止提交给服务器

use*_*861 0 html javascript php validation

我正在尝试使用javascript进行表单验证.如果发现错误,javascript应该停止将表单发送到服务器.

我通过编写语句确保javascript返回false:return false;

并且表单仍然发送到服务器.

脚本标签:

<script language="javascript" src="validations.js" type="text/javascript"></script>
Run Code Online (Sandbox Code Playgroud)

我的表格标签:

FORM id="frm" name="newCustomer" METHOD="POST" ACTION="register.php" onsubmit="return validateNewCustomer()">
Run Code Online (Sandbox Code Playgroud)

JavaScript函数:

function validateNewCustomer() {
    var name = document.getElementById('f_name').value;

    var okCustomer = true;

    if (name.value == "") {
        document.getElementById('f_name').value="kossetak";
        document.getElementById('errfname').innerHTML = "Error Name";
        okCustomer = false;
    } else {
        document.getElementById('errname').innerHTML = "";
        okCustomer = true;
    }

    return okCustomer;
}
Run Code Online (Sandbox Code Playgroud)

我感谢您的帮助.谢谢.

Pau*_*aul 8

总是从函数返回true,因为name.value == ""它总是false,所以你输入else子句.

请注意,您已经拥有.value此行:

var name = document.getElementById('f_name').value
Run Code Online (Sandbox Code Playgroud)

所以,当你说name.value你正在访问document.getElementById('f_name').value.value,这将是undefined.