javascript 错误 [对象 HTMLInputElement][对象 HTMLInputElement]

标签 javascript html

我正在练习 Java 脚本代码,但在实现此代码时遇到问题。

<html>
<body>
<script>  
function f2(){
var a=document.getElementById("a");
var b=document.getElementById("b");
var c=a+b;
document.write(c);
}
</script>  

Enter A:<input id="a" type="text" name="txt1" ><br>
Enter B:<input id="b" type="text" name="txt2" ><br>
<button type="button" onclick="f2()">Sum Here</button>
</body>
</html>

当我添加两个数字时,它会显示类似 [object HTMLInputElement][object HTMLInputElement] 的错误。

最佳答案

输入元素的 value 属性用于检索输入中输入的值。该值将是一个字符串。

由于您想要添加数字,因此最好检查输入的输入是否是数字,以避免出现不必要的错误。 有很多方法可以检查这一点,我使用的一种方法是在输入的字符串值前面添加“+”号,这会将字符串中的数字转换为数字,然后检查 NaN。

这是 fiddle 和代码 https://jsfiddle.net/7sgcmfu8/

<script>  
function f2(){
var a= +document.getElementById("a").value;
var b= +document.getElementById("b").value;
if(!isNaN(a) && !isNaN(b)){
    document.write(a+b);
}else{
    document.write("enter numbers");
}
}
</script>  

Enter A:<input id="a" type="text" name="txt1" ><br>
Enter B:<input id="b" type="text" name="txt2" ><br>
<button type="button" onclick="f2()">Sum Here</button>

关于javascript 错误 [对象 HTMLInputElement][对象 HTMLInputElement],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41216153/

相关文章:

javascript - Reactjs - html 元素内的 js

java - GWT DataGrid 在不可见的情况下初始化时不显示数据

Javascript 表单提交验证优于验证

html - 如何在悬停时更改嵌套列表的各个列表项的背景颜色(以及整个菜单宽度)

python - Beautiful Soup find_all 包装在一起而不是单独包装

javascript - 键盘计时器上的 JQuery mailcheck

javascript - knockout 3.1 : Select2 not working properly with valueAllowUnset

javascript - 从动态表创建数组

javascript - 替换所有出现的字符,除非它是字符串中的最后一个字符(javascript)

javascript - 按钮需要点击两次(Jquery)