jQuery <span>标记的增量值

use*_*905 17 jquery

我在span标签中有一个数字.我需要获取span中数字的值,然后在jQuery中增加它.我知道如何为文本输入执行此操作 - 可以对span标记执行此操作吗?

SPAN标签

<span class="changeNumber"> 33 </span>
Run Code Online (Sandbox Code Playgroud)

jQuery span选择器

var commentNumAppend = $(this).closest(".songContainer").find(".changeNumber");
Run Code Online (Sandbox Code Playgroud)

Jay*_*dra 30

示例 -

<span class="changeNumber">33</span>

$('.changeNumber').html(parseInt($('.changeNumber').html(), 10)+1)
Run Code Online (Sandbox Code Playgroud)

  • 有没有更好的方法来做这个,你不必两次选择器?(单线) (2认同)

Onl*_*ere 17

你可以这样做:

var value = parseInt($(".changeNumber").text(), 10) + 1;
$(".changeNumber").text(value);
Run Code Online (Sandbox Code Playgroud)

JsFiddle示例:

http://jsfiddle.net/stapiagutierrez/WXAvS/1/

参考文献:

  1. parseInt()
  2. text()


Jes*_*ess 7

这是最完整的答案.

  1. 该解决方案避免了选择器重复
  2. 如果范围还没有值,则优雅地处理增量.
<span class="changeNumber"></span>
Run Code Online (Sandbox Code Playgroud)
var $number = $('.changeNumber');
$number.html((parseInt($number.html(),10) || 0) + 1);
Run Code Online (Sandbox Code Playgroud)