如何显示它跨度

时间:2015-10-20 03:12:52

标签: javascript html function frontend

我要问如何显示输出到span。我总是空白,每当我提醒txtNumber我得到"对象html span元素"在警报代码上。

<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 个答案:

答案 0 :(得分:1)

我想提两件事。

1)使用txtNumber.value,时,它访问与txtNumber变量关联的元素的value属性。但是没有价值属性。如果您想访问span标记之间的内容(这里是字符串&#39;数字&#39;),您应该使用txtNumber.innerHTML.这将返回您的范围内的所有HTML内容。

2)接下来,你不能只是将一个字符串添加到一个数字,一个对象添加到一个数字。我可以看到你使用了parseInt`但它用于将带有整数签名的字符串转换为整数数据类型。 (&#34; 5&#34;转换为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 = parseInt(txtNumber.innerHTML.trim()) + 1;
var number = txtNumber.innerHTML  + 1; 

它会将两个数字添加为字符串,输出为11。但是用var number = txtNumber.innerHTML - (-1)替换它可以解决问题并将它们添加为整数。