Javascript 单击时不执行该功能

Javascript 单击时不执行该功能,javascript,html,Javascript,Html,if语句中的消息不起作用,我不知道为什么。当单击submit按钮时,主体代码似乎也没有经过javascript代码。请有人解释一下: <script> function checkSignup() { var name = document.getElementById("username").value; var p1 = document.getElementById("password1").value;

if语句中的消息不起作用,我不知道为什么。当单击submit按钮时,主体代码似乎也没有经过javascript代码。请有人解释一下:

    <script>
        function checkSignup() {
            var name = document.getElementById("username").value;
            var p1 =  document.getElementById("password1").value;
            var p2 =  document.getElementById("password2").value;
            var namelength = name.length;
            var pass1 = toString(p1);
            var pass2 = toString(p2);
            var passlength = pass1.length;

            if (namelength < 8 || namelength > 15) {
                document.getElementById("error1").innerHTML = "8 to 15 characters only";
            }
            if (passlength < 8){
                document.getElementById("error2").innerHTML = "minimum of 8 characters";
            }
            if (pass1 != pass2){
                document.getElementById("error3").innerHTML = "should be the same with password";
            }
            if (namelengh >= 8 && namelength <= 15 && p1length >= 8 && p1 == p2)
                document.getElementbyId("error1").innerHTML = "";
                document.getElementbyId("error2").innerHTML = "";
                document.getElementbyId("error3").innerHTML = "";
                var confirm = window.confirm("Are you sure you want to submit?");
                if (confirm == 1){
                    alert("You are now sign-up!");
                }
        }
    </script>
</head>
<body>
    <form method = "post" onsubmit = "return false">
        <fieldset>
        <legend>New Account Screen</legend>
            Username: <input type = "text" autofocus required id = "username"><p id = "error1"></p>
            <br>
            Password:<input type = "password" id = "password1" required><p id = "error2"></p>
            <br>
            Re-enter <br>
            Password: <input type = "password" id = "password2" required><p id = "error3"></p>
            <div id = "div1">
            <input type = "submit" value = "Submit" onclick = "checkSignup()">
            <input type = "reset" value = "Reset">
            </div>
        </fieldset>
    </form>
</body>

函数checkSignup(){
var name=document.getElementById(“用户名”).value;
var p1=document.getElementById(“password1”).value;
var p2=document.getElementById(“password2”).value;
var namelength=name.length;
var pass1=toString(p1);
var pass2=toString(p2);
var passlength=pass1.length;
如果(名称长度<8 | |名称长度>15){
document.getElementById(“error1”).innerHTML=“仅限8到15个字符”;
}
if(passlength<8){
document.getElementById(“error2”).innerHTML=“至少8个字符”;
}
if(pass1!=pass2){
document.getElementById(“error3”).innerHTML=“应与密码相同”;
}
如果(namelengh>=8&&namelength=8&&p1==p2)
document.getElementbyId(“error1”).innerHTML=“”;
document.getElementbyId(“error2”).innerHTML=“”;
document.getElementbyId(“error3”).innerHTML=“”;
var confirm=window.confirm(“您确定要提交吗?”);
如果(确认==1){
提醒(“您现在注册了!”);
}
}
新帐户屏幕
用户名:


密码:


重新输入
密码:


namelengh
未定义

namelengh
更改为
namelength

if (namelengh >= 8 && namelength <= 15 && p1length >= 8 && p1 == p2)
if(namelengh>=8&&namelength=8&&p1==p2)

变量名namelength在下面的if语句中是错误的

if (namelengh >= 8 && namelength <= 15 && p1length >= 8 && p1 == p2)
if(namelengh>=8&&namelength=8&&p1==p2)
将其更改为namelength并重试。

如中的小错误
document.getElementById
b应该是大写的,而不是小的
namelength
在其中一个if条件中有一个输入错误

var pass1='',pass2='',passlength=0,namelength=0;
函数checkSignup(){
var name=document.getElementById(“用户名”).value;
var p1=document.getElementById(“password1”).value;
var p2=document.getElementById(“password2”).value;
namelength=name.length;
pass1=toString(p1);
pass2=toString(p2);
passlength=pass1.length;
如果(名称长度<8 | |名称长度>15){
document.getElementById(“error1”).innerHTML=“仅限8到15个字符”;
}
if(passlength<8){
document.getElementById(“error2”).innerHTML=“至少8个字符”;
}
if(pass1!=pass2){
document.getElementById(“error3”).innerHTML=“应与密码相同”;
}
如果(namelength>=8&&namelength=8&&p1==p2)
document.getElementById(“error1”).innerHTML=“”;
document.getElementById(“error2”).innerHTML=“”;
document.getElementById(“error3”).innerHTML=“”;
var confirm=window.confirm(“您确定要提交吗?”);
如果(确认==1){
提醒(“您现在注册了!”);
}
}

新帐户屏幕
用户名:


密码:


重新输入
密码:


这里是完整的功能代码,几乎没有打字错误

函数检查注册(){
var name=document.getElementById(“用户名”).value;
var p1=document.getElementById(“password1”).value;
var p2=document.getElementById(“password2”).value;
var namelength=name.length;
var pass1=toString(p1);
var pass2=toString(p2);
var passlength=pass1.length;
如果(名称长度<8 | |名称长度>15){
document.getElementById(“error1”).innerHTML=“仅限8到15个字符”;
}
if(passlength<8){
document.getElementById(“error2”).innerHTML=“至少8个字符”;
}
if(pass1!=pass2){
document.getElementById(“error3”).innerHTML=“应与密码相同”;
}
如果(namelength>=8&&namelength=8&&p1==p2)
document.getElementById(“error1”).innerHTML=“”;
document.getElementById(“error2”).innerHTML=“”;
document.getElementById(“error3”).innerHTML=“”;
var confirm=window.confirm(“您确定要提交吗?”);
如果(确认==1){
提醒(“您现在注册了!”);
}
}

新帐户屏幕
用户名:


密码:


重新输入
密码:


您是否已检查浏览器控制台是否存在错误,或确保在
javascript
有时间执行之前未提交表单?请确保在发布问题之前检查浏览器控制台是否存在错误,并使用开发人员工具了解错误的确切原因:)if循环条件中存在键入错误。确保你纠正了它,然后重新开始