我有一个span元素,其中包含1,568
等数字。
单击按钮时,我需要将该数字增加1.因此1,568
变为1,569
。
如果我只是获取值并向其添加+ 1
,则值变为2
:
("#artist-fan-count").text(parseInt($("#artist-fan-count").text()) + 1);
我应该尝试删除逗号,然后运行上面的代码吗?如果我在下面这行,没有任何反应 - 这让我相信我做错了。耸肩。
$("#artist-fan-count").text().replace(',', '');
任何提示?
答案 0 :(得分:3)
请尝试以下操作删除逗号并按1递增:
var fanCountEl = document.getElementById('artist-fan-count');
fanCountEl.innerHTML = parseInt(fanCountEl.innerHTML.replace(',', '')) + 1;
答案 1 :(得分:3)
您可以删除所有逗号,parseInt,增量,然后使用逗号重建您的号码,如下所示:
var $e = $("#artist-fan-count");
var num = parseInt($e.text().replace(',','')) + 1;
$e.text($.fn.digits(num));
答案 2 :(得分:2)
好吧,你必须把你替换的文字写回来:
$("#artist-fan-count").text($("#artist-fan-count").text().replace(',', ''));
之后,您可以将文本解析为整数,添加数字并(如果您愿意)将该逗号放回原位。
如果您想重新组合文字:
var number = $("#artist-fan-count").text();
$("#artist-fan-count").text(parseInt(number/1000)+","+(number%1000));
答案 3 :(得分:1)
你可以这样做:
var $e = $("#artist-fan-count");
var str = ''+(parseInt($e.text().replace(/,/g,''), 10)+1);
var r = /(\d+)(\d{3})/;
while (r.test(str)) str = str.replace(r, '$1' + ',' + '$2');
$e.text(str);
答案 4 :(得分:1)
你很接近,但是替换不会就地进行:
$("#artist-fan-count").text($("#artist-fan-count").text().replace(',', ''));