我使用下面的代码来获取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>
答案 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>