3

In javascript, I want to make a counter that increases the value when you click a button.

When I click the add button the first time, the number doesn't increase.

But when I print the value to the console, the result increases.

The fiddle: 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

    });

  });​

How do I make the value show the same for both lines?

0

4 Answers 4

3

You are doing a Post Increment. Make it pre-increment:

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

Explanation:

// 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
Sign up to request clarification or add additional context in comments.

Comments

2

do you mean:

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

1 Comment

The '++' has to go in front of the value i guess! Thank you for your help!
1

use

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

LIVE 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

    });

  });

Comments

1

Try this:

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


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

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

    });

  });

Take a look in this link about the operator description of ++ in JavaScript.

Only one line actually changed; however, here is the fiddler link if you want to test it.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.