无法从 HTML JavaScript 中的输入类型"电子邮件"字段中获取值



我想从'email'类型的输入字段中获取输入值,但我得到了NaN。value.password正在工作,我可以得到password字段的值,但document.getElementById('em-id').value给了我NaN

请帮我解决这个问题。

我的代码片段在下面

<div class="email-div">
<i class="fas fa-user-shield"></i>
<input type="email" name="email" id="em-id" placeholder="Email" min="3" max="15" 
spellcheck="false" required="true">
</div>
<div class="pass-div">
<i class="fas fa-lock"></i>
<input type="password" name="password" id="pass" placeholder="Password" min="8" max="32" 
spellcheck="false" required="true">
</div>
<div class="btn-div">
<button class="btn" id="login-btn" v-on:click="login">LOGIN</button>
</div>


login: function() {
let email = document.getElementById('em-id').value
let password = document.getElementById('pass').value
if(email && password) {
console.log('email => ', + email)       //gives output Nan 
console.log('password => ' + password)
}
}

这个逗号和加号创建了问题。Javascript试图将电子邮件转换为数字类型转换,原因是电子邮件前面有加号。您应该使用逗号记录2个值,或者使用+不使用逗号记录单个字符串。

,+

login: function() {
let email = document.getElementById('em-id').value
let password = document.getElementById('pass').value
if(email && password) {
console.log('email => '+ email)   
console.log('password => '+ password)
}
}

em id用于类型为Email..的输入字段。Value期望它是一个数值字段。您可以删除值,代码应该可以工作。

此处的问题是逗号console.log('email=>',+电子邮件(

login: function() {
let email = document.getElementById('em-id').value
let password = document.getElementById('pass').value
if(email && password) {
console.log('email => ' + email)       //gives output Nan 
console.log('password => ' + password)
}
}

最新更新