2017-07-27 45 views
1

我有一個輸入字段的表單。我試圖在控制檯中記錄這些字段。控制檯顯示「的createUser {姓:空}」 : 對象javascript對象不會在控制檯中打印

<div class="#"> 
    First Name:<br> 
    <input placeholder="First Name" type="text" id="firstName" required> 
    <br> 
</div> 
<button onclick="user()" class="btn btn-primary">Sign Up</button> 


function createUser(firstName, lastName, email, userName, password){ 
    this.firstName = firstName; 
} 

function user(){ 
    var user = new createUser(document.getElementById(firstName.text)); 
    console.log(user); 
} 

console.log(user); 
+0

什麼是firstName.text? –

+1

不是你的問題,但它不是你的函數具有相同名稱的變量的最大想法。在這種情況下,它應該無關緊要,但是如果您需要緩衝一個函數,這樣做會給您一些有趣的錯誤。 –

+0

更正此行var user = new createUser(document.getElementById('firstName')。value); –

回答

2
var user = new createUser(document.getElementById('firstName').value); 

這可能會有幫助。

0

您要定義的對象名稱相同的函數名。你需要改變一個或其他。你也需要獲得輸入字段的值。

試試這個

var userObj = new createUser(document.getElementById('firstName').value); 
console.log(userObj) 
0

試試這個

var user = ''; 
function createUser(firstName, lastName, email, userName, password){ 
this.firstName = firstName; 
} 

function user(){ 
user = new createUser(document.getElementById(firstName).value); 
//the same as accessing the text of <input value="this is my first name."> 

console.log(user.firstName); 
//log the property firstName of the object user. when you put this.firstName inside a function, it turns that into a property of of the variable you save it as. That means you must call it by using the variable and a "." and the property name ex firstName 
} 

console.log(user.firstName); 
0

您可以打印所有輸入在控制檯登錄以下方式字段值:

考慮,您有以下輸入字段:

<div class="divclass"> 
    First Name:<br> 
    <input placeholder="First Name" type="text" id="firstName" required> 
    <br> 
    Middle Name:<br> 
    <input placeholder="Middle Name" type="text" id="middleName" required> 
    <br> 
    Last Name:<br> 
    <input placeholder="Last Name" type="text" id="lastName" required> 
    <br> 
</div> 
<button onclick="user()" class="btn btn-primary">Sign Up</button> 

function user(){ 
    var inputFields = document.querySelectorAll('#firstName, #middleName, #lastName'); 
    var inputFieldValues = Array.prototype.forEach.call(inputFields, function(inputField){ 
     console.log("id: "+inputFields.id + " value: "+inputField.value); 
}); 

}