2016-11-10 11 views
-1

私はHTMLフォームのユーザー入力からjavascriptで配列を作成しようとしています。配列が、私はそれが移入されています知っているにもかかわらず、それは.pushに到達するまで、私はエラーにjavascriptの配列を構築

未定義

社員を取得微構築しているようだと私はデバッグを実行すると、私はこれを見ることができますモード。

HTML

<div class="wel" align="left"> 

    <form class="form-signin"> 

     <p> 
      <input type="text" class="form-control" id="EmployeeID" name="EmployeeID" placeholder="EmployeeID" required="" autofocus="" /> 
     </p> 
     <p> 
      <input type="text" class="form-control" id="fullname" name="fullname" placeholder="FullName" required="" autofocus="" /> 
     </p> 
     <p> 
      <input type="text" class="form-control" id="username" name="username" placeholder="UserName" required="" autofocus="" /> 
     </p> 
     <p> 
      <input type="email" class="form-control" id="Email" name="Email" placeholder="Email" required="" autofocus="" /> 
     </p> 
     <p> 
      <input type="password" class="form-control" id="Password" name="Password" placeholder="password" required="" autofocus="" /> 
     </p> 
     <p> 
      <input type="password" class="form-control" id="Password1" name="ConfirmPassword" placeholder="password" required="" autofocus="" /> 
     </p> 

     <a id='subButton' class="btn btn-primary btn-lg" style="vertical-align: bottom">submit</a> 

    </form> 
</div 

$(document) 
    .ready(function() { 

     var arrayDetails = new Array(); 
     var holdingArray = new Array(); 

     function newEntry(employeeId, fullname, username, email, password) { 

      this.employeeId = employeeId; 
      this.fullname = fullname; 
      this.username = username; 
      this.email = email; 
      this.Password = password; 

     } 

      $("#subButton") 
      .click(function() { 

       debugger; 

       var success = true; 

       var password = document.getElementById("Password"); 
       var password1 = document.getElementById("Password1"); 

       if (password.value !== password1.value) 
       { 
        alert("Password do not match"); 
       } 
       else 
       { 
        var employeeIdEntered = document.getElementById("EmployeeID").value; 

        if (employeeIdEntered === "") { 
         success = false; 
        } 

        var fullnameentered = document.getElementById("fullname").value; 

        if (fullnameentered === "") { 
         success = false; 
        } 

        var usernameEntered = document.getElementById("username").value; 

        if (usernameEntered === "") { 
         success = false; 
        } 

        var emailEntered = document.getElementById("Email").value; 

        if (emailEntered === "") { 
         success = false; 
        } 

        var passwordEnterned = document.getElementById("Password").value; 

        if (passwordEnterned === "") { 
         success = false; 
        } 

        var entry = newEntry(employeeIdEntered, 
         fullnameentered, 
         usernameEntered, 
         emailEntered, 
         passwordEnterned); 

        arrayDetails.push(entry); 
       }; 

       if (success) 
       { 
        sendToController(); 
       } else 
       { 
        alert(""); 
       } 

      }); 
+2

あなたのコードには、「employeeid」という変数はまったくありません。 – Quentin

+0

エラーメッセージには正確に何が含まれていますか? – gus27

+0

あなたの 'newEntry()'関数は何ですか –

答えて

1

JavaScriptがお使いのnewEntry()機能はreturnの文が欠落しています。

function newEntry(employeeId, fullname, username, email, password) { 
     var res = {}; 
     res.employeeId = employeeId; 
     res.fullname = fullname; 
     res.username = username; 
     res.email = email; 
     res.Password = password; 
     return res; 
    } 
関連する問題