input.value中的第一个字母不会转换为大写

时间:2014-11-01 09:51:46

标签: javascript

我有4个输入,当调用addContact函数时会抓取这个值,在我将这些值发送到数据库之前我需要将第一个字母的第一个字母和最后一个名字转换为大写,以便我可以应用它正确地使用HTML,但它只是不起作用。我已经在控制台中调试了代码并运行了代码,但这两个值并没有改变。我试图将整个事物更改为大写和小写但是在运行代码时似乎没有任何更改值。我没有错。我错过了什么?

addContact: function() {

    var firstName = document.getElementById('fname').value;
    var lastName = document.getElementById('lname').value;
    var email = document.getElementById('email').value;
    var phone = document.getElementById('phone').value;

    firstName.charAt(0).toUpperCase();
    lastName.charAt(0).toUpperCase();

    dbContactsRef.push({firstName: firstName, lastName: lastName, email: email, phoneNumber: phone});
},

2 个答案:

答案 0 :(得分:2)

JavaScript中的字符串是不可变的。你需要:

firstName = firstName.charAt(0).toUpperCase() + firstName.slice(1)
lastName = lastName.charAt(0).toUpperCase() + lastName.slice(1)

答案 1 :(得分:0)

toUpperCase()方法不会更改原始字符串。它返回它。