外部Js文件不验证我的html表单

外部Js文件不验证我的html表单,html,validation,Html,Validation,我用html编写了一个链接到外部Js文件的代码,但是Js代码没有验证表单字段。有谁能发现这个问题吗。我尽我所能让JS验证表单,但它就是不起作用。下面是JS代码: <script> function validateMyForm() { var fname = document["myform"]["firstname"].value; var lname = document["myform"]["lastname"].value;

我用html编写了一个链接到外部Js文件的代码,但是Js代码没有验证表单字段。有谁能发现这个问题吗。我尽我所能让JS验证表单,但它就是不起作用。下面是JS代码:

<script>
    function validateMyForm() {
        var fname = document["myform"]["firstname"].value;
        var lname = document["myform"]["lastname"].value;
        var email = document["myform"]["email"].value;
        var atpos = email.indexOf("@");
        var dotpos = email.lastIndexOf(".");
        var pass = document["myform"]["password"].value;
        var passlen = pass.length;
        var confpass = document["myform"]["ConfirmPassword"].value;

        if (fname == null || fname == "") {
            alert("Please enter your First Name!");
            return false;
        } else if (lname == null || lname == "") {
            alert("Please enter a your Last Name!");
            return false;
        } else if (email == null || email == "") {
            alert("Please enter an email!");
            return false;
        } else if (atpos < 1 || dotpos < atpos + 2 || dotpos + 2 >= email.length) {
            alert("Please enter a valid email address!");
            return false;
        } else if (pass == null || pass == "") {
            alert("Please enter a Password!");
            return false;
        } else if (passlen < 4 || passlen > 15) {
            alert("Password needs to be to have a length of 4-15 characters");
            return false;
        } else if (pass != confpass) {
            alert("Passwords do not match!");
            return false;

        }
    }
</script>

函数validateMyForm(){
var fname=document[“myform”][“firstname”]。值;
var lname=document[“myform”][“lastname”].value;
var email=document[“myform”][“email”]。值;
var atpos=email.indexOf(“@”);
var dotpos=email.lastIndexOf(“.”);
var pass=document[“myform”][“password”]。值;
var passlen=pass.length;
var confpass=document[“myform”][“ConfirmPassword”]。值;
如果(fname==null | | fname==“”){
警告(“请输入您的名字!”);
返回false;
}else if(lname==null | | lname==“”){
警告(“请输入您的姓氏!”);
返回false;
}else if(email==null | | email==“”){
提醒(“请输入电子邮件!”);
返回false;
}else if(atpos<1 | | dotpos=email.length){
警报(“请输入有效的电子邮件地址!”);
返回false;
}else if(pass==null | | pass==“”){
警报(“请输入密码!”);
返回false;
}else if(passlen<4 | | passlen>15){
警报(“密码长度需为4-15个字符”);
返回false;
}否则如果(通过!=通过){
警报(“密码不匹配!”);
返回false;
}
}

由于您没有发布HTML,我假设您没有触发函数

为了使函数正常工作,您需要触发表单验证函数。为此,需要将
onsubmit=“return validateMyForm()”
添加到表单标记中。在调用函数之前,确保包含
return


如果代码有问题,您可以使用内置于所有web浏览器中的检查器查看错误。如果您使用的是chrome浏览器,您可以通过按
Control+Shift+C

访问inspector,因为您没有发布HTML,我假设您没有触发您的函数

为了使函数正常工作,您需要触发表单验证函数。为此,需要将
onsubmit=“return validateMyForm()”
添加到表单标记中。在调用函数之前,确保包含
return


如果代码有问题,您可以使用内置于所有web浏览器中的检查器查看错误。如果您使用的是chrome浏览器,您可以通过按
Control+Shift+C

Hi来访问inspector,在询问其他问题之前,请参阅此部分。请包括你已经尝试过的内容,而不是说你已经“尝试过一切”,这也会有助于你的表单HTML。您是否在提交时触发该功能?您是否有验证表单的按钮?您好,请在询问其他问题之前参考此按钮。请包括你已经尝试过的内容,而不是说你已经“尝试过一切”,这也会有助于你的表单HTML。您是否在提交时触发该功能?你有验证表单的按钮吗?我是这个论坛的新手。不幸的是,留言板不允许我发布我的html代码。你必须在每行做4个空格的缩进,使其显示为代码。我是这个论坛的新手。不幸的是,留言板不允许我发布我的html代码。你必须在每行中做4个空格的缩进,使其显示为代码