获取html标签文本,转换为数字,增加,然后用结果更新标签文本

时间:2016-05-26 08:44:16

标签: javascript html label increment

我的网页上有一个标签,

<label id="testLabelq" class="no_border" style="position: relative; top:-50px; margin: 0 auto; padding: 0px; width:20%; height: 25px;">1</label>

我希望将数字(最初为1)增加1,然后按下此按钮将标签的内容设置为新值。

<button id="testButtonplus" class="item_button" type="Button" style="position: relative; left:-40%; margin: 0 auto; padding: 0px; width:20%; height: 50px;" onclick="add()">+</button>

我的JavaScript函数看起来像这样

        function add()
    {
            var quantity_temp = document.getElementById("testLabelq").innerText; 

            var qantity_int = parseInt(quantity_temp, 10) + 1;

            document.getElementById("testLabelq").innerHTML = "Test " + quantity_int.toString();
    }

当我按下按钮时,标签的值不会改变......

如果我改变了行

document.getElementById("testLabelq").innerHTML = "Test " + quantity_int.toString();

document.getElementById("testLabelq").innerHTML = "Test " + quantity_temp;

然后标签文本更新了额外的&#34;测试&#34;按下每个按钮。

因此我认为我的号码转换必定是错误的,但我无法看到。

谢谢, 格雷厄姆

2 个答案:

答案 0 :(得分:2)

您在函数中遇到语法错误(var qantity_int =):

function add() {
    var quantity_temp = document.getElementById("testLabelq").innerText;
    var quantity_int = parseInt(quantity_temp, 10) + 1;
    document.getElementById("testLabelq").innerHTML = quantity_int.toString();
}

答案 1 :(得分:1)

您的代码似乎在简化后有效:

function add() {
  var quantity_temp = document.getElementById("testLabelq").innerText;
  var quantity_int = parseInt(quantity_temp, 10) + 1;
  document.getElementById("testLabelq").innerHTML = quantity_int.toString();
}
<label id="testLabelq">1</label>
<button id="testButtonplus" class="item_button" type="Button" onclick="add()">+</button>

一次修正是一个错字qantity_int应为quantity_int