我想在这样的特定jQuery对象中添加一个数字。
$('#count').text(Number($('#count').text()) + 1);
它可以工作,但是两次编写相同的选择器和text()
方法有点多余。
是否有更好的方法来使用jQuery,例如$('#count').text(Number(this) + 1);
?
答案 0 :(得分:5)
是的,使用$.fn.text
的回调参数:
$('#count').text(function(i, oldText) {
return +oldText + 1;
});
在回调中,oldText
设置为现有值。我们使用一元加+
运算符将其转换为数字(这比使用Number()
更好)。回调的返回值被设置为元素的新文本值。