如何显示它以跨度
我想问如何显示输出跨度。我总是变得空白,每当我提醒txtNumber时,我会在警报代码中获得“object html span element”。如何显示它以跨度
<span id="displayQty"> number </span>
<input id="btnAdd" type="button" value="+" onclick="add2()" />
脚本
function add2() {
var txtNumber = document.getElementById("displayQty");
var number = parseInt(txtNumber.value) + 1;
txtNumber.value = number;
alert(displayQty.value);
}
我想提两个问题。
1)当您使用txtNumber.value,
时,它访问与txtNumber变量关联的元素的value属性。但没有价值属性。如果要访问span标记(这里是一个字符串“number”)之间写入的内容,则应该使用txtNumber.innerHTML.
这将返回跨度内的所有HTML内容。
2)接下来的事情,你不能只是添加一个字符串到一个数字,一个对象到一个数字。我可以看到您已使用parseInt
`,但它用于将具有整数签名的字符串转换为整数数据类型。 (“5”转换为5)。
试试这个 -
<html>
<body
<input id="btnAdd" type="button" value="+" onclick="add2()" />
<span id="displayQty">1</span>
<script>
function add2() {
var txtNumber = document.getElementById("displayQty");
var number = parseInt(txtNumber.innerHTML.trim()) + 1;
txtNumber.innerHTML = number;
}
</script>
</body>
</html>
如果通过
var number = txtNumber.innerHTML + 1;
更换var number = parseInt(txtNumber.innerHTML.trim()) + 1;
将两个数字加字符串和输出是11。但用var number = txtNumber.innerHTML - (-1)
取代它会把它们作为整数添加。
我得到一个Nan输出。 – Lemon
你使用了完整的代码吗?请记住在span标签内,应该只有整数。在你的情况下,它是“数字”之前。数字+ 1是没有意义的。就像香蕉+苹果在添加的情况下是没有意义的 – phositronax
更改'txtNumber.value =编号;'为'txtNumber.innerHTML =编号;'检查[**演示**](https://jsfiddle.net/tusharj/s36gkt8s/) – Tushar
我得到一个楠! @Tushar – Lemon
Tushar的演示效果很好。 –