3

在javascript中,我想制作一个计数器,当您单击按钮时会增加值。

当我第一次单击添加按钮时,数字不会增加。

但是当我将值打印到控制台时,结果会增加。

小提琴:http: //jsfiddle.net/techydude/H63As/

  $(function() {
    var //valueCount = $("counter").value(),
        counter = $("#counter"),
        addBtn = $("#add"),
        value = $("#counter").html();

      addBtn.on("click", function() {

      counter.html(value ++);  //this value is not incremented.
      console.log(value);      //this value gets incremented.
      return

    });

  });​

如何使两条线的值显示相同?

4

4 回答 4

3

你正在做一个后期增量。使其预增量:

addBtn.on("click", function() {
  counter.html(++value);
  console.log(value);
  return
});

解释:

// Increment operators
x = 1;
y = ++x;    // x is now 2, y is also 2
y = x++;    // x is now 3, y is 2

// Decrement operators
x = 3;
y = x--;    // x is now 2, y is 3
y = --x;    // x is now 1, y is also 1
于 2012-11-11T05:12:05.770 回答
2

你的意思是:

addBtn.on("click", function() {
    counter.html(++value);
    return;          
});
于 2012-11-11T05:01:24.213 回答
1

采用

 value = parseInt($("#counter").html());

现场 jSFiddle

  $(function() {
    var //valueCount = $("counter").value(),
        counter = $("#counter"),
        addBtn = $("#add"),
        value =    parseInt($("#counter").html());


    addBtn.on("click", function() {

      counter.html(++value );
      console.log(value);
      return

    });

  });
于 2012-11-11T05:01:53.073 回答
1

试试这个:

  $(function() {
    var //valueCount = $("counter").value(),
        counter = $("#counter"),
        addBtn = $("#add"),
        value = $("#counter").html();


    addBtn.on("click", function() {

      counter.html(++value);
      console.log(value);
      return

    });

  });

在这个链接中查看关于 JavaScript 中 ++ 的运算符描述。

实际上只有一行发生了变化;但是,如果您想测试它,这里是提琴手链接。

于 2012-11-11T05:03:25.850 回答