在div中获取一个数字并计算加一

时间:2013-11-01 00:37:51

标签: javascript jquery

我使用下面的代码来获取div中的值(数字)加一,但如果值为1并且我按下我的按钮它会给我01并且我想加一个,如果它是2并且再次按我的按钮它给了我22。

我的代码是:

<div class="mybtn">0</div>

<script>

$(function() {

$(".buttonDown").click(function() 
{
var checkDown = $('.buttonDown').text();
$('.mybtn').hide("fast");
$('.mybtn').text(checkDown+1);
$('.mybtn').fadeIn("slow");
});

});
</script>

5 个答案:

答案 0 :(得分:2)

$(function () {
    $(".mybtn").click(function () {
        var $this = $(this).stop(true, true).hide("fast");
        var checkDown = parseInt($.trim($(this).text()), 10);
        $this.text(checkDown + 1).fadeIn("slow");
    });
});

演示:Fiddle

答案 1 :(得分:1)

那是因为你在一起添加了两个字符串。尝试在变量周围使用parseInt()方法:

 $('.mybtn').text(parseInt(checkDown, 10)+1);

获得最佳效果。

答案 2 :(得分:0)

使用+checkDown代替checkDown来隐式将字符串转换为数字。

var checkDown = $('.buttonDown').text();
$('.mybtn').text(+checkDown + 1);

答案 3 :(得分:0)

您目前正在做的是告诉它将值连接到字符串,如“0”+ 1 =字符串“01”,而不是将其转换为整数,然后向其中添加一个。

    var checkDown = ParseInt($('.buttonDown').text());
    $('.mybtn').text(checkDown+1);

答案 4 :(得分:0)

试试这个;

<div class="mybtn">0</div>



  <script>

$(function() {

$(".buttonDown").click(function() 
{

var checkDown = parseInt($(this).text(), 10)
$(this).hide("fast").text(checkDown+1).fadeIn("slow");


});

});
</script>