如何解决尝试在if陈述中的输入字段中使用数字时获取NaN
我的部分反思有问题。我正在尝试获取表格单元格,以显示需要充电之前还剩下多少英里。
我有一个输入单元格,用户可以在其中输入剩余的英里数(50),然后进行计算(50-(10%buffer,25)= 25并显示在它旁边的单元格上。
我已经遍历了这里的问题,我可以找到并尝试其他人尝试过的方法,但是现在我真的处于死胡同。
JSfiddle在这里:https://jsfiddle.net/Coxy/gr5bcnsq/
代码是
var car_1_mtnc = document.getElementById('car-1-mtnc');
$(".confirm").click(function() {
var a = parseInt(document.getElementById('car-1-cmra').value,10);
var miles = a - 25;
if ( a != Number ) {
car_1_mtnc.textContent = "Please enter the miles left";
} else {
car_1_mtnc.textContent = miles;
}
});
HTML
<td><span id="car-1-cmra" class="answer" type="number"></span><input id="car-1-cmr" class="cmr" type="text" value="" placeholder="Enter Miles Left"></input></td>
<td id="car-1-mtnc" class="mtnc"></td>
任何指针将不胜感激,谢谢您的宝贵时间。
解决方法
您的代码有2个问题。
首先是您正在使用{p>从.value
获得#car-1-crma
document.getElementById('car-1-cmra').value
但是这是换出span
,所以没有.value-您可以在跨度上使用.textContent
或使用(现在)隐藏的输入
document.getElementById('car-1-cmr').value
document.getElementById('car-1-cmra').textContent
$("#car-1-cmra").text()
第二个是您正在使用
if (a != Number)
注释中提到的要检查输入是否为数字,请使用
if (isNaN(a))
进行这两项更改可以解决里程数计算的麻烦:https://jsfiddle.net/4m8pa9dh(输入值)和https://jsfiddle.net/4m8pa9dh/1/(跨度textContent)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。