Javascript 尝试创建一个简单表单,如果没有填写任何内容,该表单将显示错误

Javascript 尝试创建一个简单表单,如果没有填写任何内容,该表单将显示错误,javascript,html,forms,innerhtml,Javascript,Html,Forms,Innerhtml,我最近刚开始学习javascript,正在参加一些课程,对于我的一个课程,我必须创建一个简单的表单 如果按下submit按钮时表单未填写,则应该有javascript来显示错误消息 按下按钮时不会发生任何事情,我甚至不确定该功能是否正在运行 我没有写任何文档,我按照说明一步一步地写,但是我仍然不能让它正常工作 如果能得到任何帮助,我将不胜感激,非常感谢 我的表格 函数寄存器(){ var x=新数组(); x[0]=document.getElementById('name')。值; x[1

我最近刚开始学习javascript,正在参加一些课程,对于我的一个课程,我必须创建一个简单的表单

如果按下submit按钮时表单未填写,则应该有javascript来显示错误消息

按下按钮时不会发生任何事情,我甚至不确定该功能是否正在运行

我没有写任何文档,我按照说明一步一步地写,但是我仍然不能让它正常工作

如果能得到任何帮助,我将不胜感激,非常感谢


我的表格
函数寄存器(){
var x=新数组();
x[0]=document.getElementById('name')。值;
x[1]=document.getElementById('lname').value;
x[2]=document.getElementById('email').value;
x[3]=document.getElementById('pw').value;
x[4]=document.getElementById('pwc')。值;
var h=新数组();

h[0]=您在定义错误消息时出现语法错误:

var h = new Array();
h[0] = <span style="color:'red'>Please type first name!</span>";
h[1] = <span style="color:'red'>Please type last name!</span>";
h[2] = <span style="color:'red'>Please type email!</span>";
h[3] = <span style="color:'red'>Please type a password!</span>";
h[4] = <span style="color:'red'>Please confirm password!</span>";
var h=new Array();

h[0]=我的建议是分步进行

  • 检查是否先调用
    register()
    函数
  • register
    函数中,首先尝试获取一个元素值,比如通过执行
    document.getElementById('name')
    并测试在提交时是否获得了一个值以及为name字段指定的值
  • 尝试为div设置一些值。我建议在chrome inspector控制台或firefox inspector控制台中进行测试。例如
    document.getElementById('mname')。innerHtml='testing this'
  • 一旦你能自如地使用各个部件,你就应该能够把它们串在一起

  • 试试这个脚本,我觉得它更干净一点

     <script type="text/javascript">
    
    
    function register(){
    
        var name = document.getElementById('name').value,
            lName = document.getElementById('lname').value,
            email = document.getElementById('email').value,
            pw = document.getElementById('pw').value,
            pwc = document.getElementById('pwc').value;
              if(name !== '' && lName !== ''&& email !== '' && pw !== '' && pwc !== ''){
                     alert("succes");
                }else{
                      alert("sorry fill all inputs");
                  }
            };
    
    </script>
    
    
    函数寄存器(){
    var name=document.getElementById('name')。值,
    lName=document.getElementById('lName')。值,
    email=document.getElementById('email')。值,
    pw=document.getElementById('pw')。值,
    pwc=document.getElementById('pwc')。值;
    如果(姓名!=''&&lName!=''&&email!=''&&pw!=''&&pwc!=''){
    警惕(“成功”);
    }否则{
    警报(“抱歉,请填写所有输入”);
    }
    };
    
    您犯了一些错误,一个在span字符串中,另一个在if语句中。其余的看起来都很好

    检查这把小提琴:

    函数寄存器(){
    var x=新数组();
    x[0]=document.getElementById('name')。值;
    x[1]=document.getElementById('lname').value;
    x[2]=document.getElementById('email').value;
    x[3]=document.getElementById('pw').value;
    x[4]=document.getElementById('pwc')。值;
    var h=新数组();
    h[0]=“请键入名字!”;
    h[1]=“请键入姓氏!”;
    h[2]=“请键入电子邮件!”;
    h[3]=“请键入密码!”;
    h[4]=“请确认密码!”;
    var divs=新数组(“mname”、“mlname”、“memail”、“mpw”、“mpwc”);
    对于(x中的i){
    var误差=h[i];
    var div=divs[i];
    如果(x[i]==''){
    document.getElementById(div.innerHTML=错误;
    }否则{
    document.getElementById(div.innerHTML=“OK!”;
    };
    };
    };
    
    我认为
    '
    颜色:“红色”
    是不必要的。Voteddown…首先不是一个正确的解决方案。你还忘了在if语句中包含错误!太棒了!非常感谢…这句语法似乎让我受益匪浅。感谢你的帮助我感谢你的帮助。不过我确实有一个问题。任何软件上都有类似调试功能吗?请回答因为我觉得这很有用,有点像VisualStudio C++。我一直使用记事本+ +、括号,有时使用Dreamweaver CS6和CC。再次感谢PalpTeleLJ WebSt暴、Eclipse、Net Bebean都能工作。但是,您可以简单地使用崇高的文本或记事本+ +,并使用浏览器进行调试。好多了哈哈。我只是按照老师的方法做的。谢谢你的帮助!
     <script type="text/javascript">
    
    
    function register(){
    
        var name = document.getElementById('name').value,
            lName = document.getElementById('lname').value,
            email = document.getElementById('email').value,
            pw = document.getElementById('pw').value,
            pwc = document.getElementById('pwc').value;
              if(name !== '' && lName !== ''&& email !== '' && pw !== '' && pwc !== ''){
                     alert("succes");
                }else{
                      alert("sorry fill all inputs");
                  }
            };
    
    </script>
    
    function register(){
    
    var x = new Array();
    x[0] = document.getElementById('name').value;
    x[1] = document.getElementById('lname').value;
    x[2] = document.getElementById('email').value;
    x[3] = document.getElementById('pw').value;
    x[4] = document.getElementById('pwc').value;
    
    var h = new Array();
    h[0] = "<span style=color:red>Please type first name!</span>";
    h[1] = "<span style=color:red>Please type last name!</span>";
    h[2] = "<span style=color:red>Please type email!</span>";
    h[3] = "<span style=color:red>Please type a password!</span>";
    h[4] = "<span style=color:red>Please confirm password!</span>";
    
    var divs = new Array("mname", "mlname", "memail", "mpw", "mpwc");
    
            for(i in x){
    
    
                var error = h[i];
                var div = divs[i];
    
    
                if(x[i]===''){
    
                    document.getElementById(div).innerHTML = error;
    
                }else{
    
                    document.getElementById(div).innerHTML = "OK!";
    
                };
    
    
            };
        };