2011-10-08 11 views
16

Mam numer w znaczniku zakresu. Potrzebuję uzyskać wartość liczby w zakresie, a następnie zwiększyć go wewnątrz jQuery. Wiem, jak to zrobić w przypadku wprowadzania tekstu - czy można to zrobić dla znacznika zakresu?jQuery przyrost wartość <span> tag

znacznik SPAN

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

rozpiętość jQuery selektor

var commentNumAppend = $(this).closest(".songContainer").find(".changeNumber"); 

Odpowiedz

29

Przykład -

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

$('.changeNumber').html(parseInt($('.changeNumber').html(), 10)+1) 
+1

Jest to najlepsze podejście AFAIK. Ale czuje się jak pisanie 'zmienna: = zmienna + 1' 30 lat temu, zamiast' zmienna ++ ' – mirelon

+2

Czy istnieje lepszy sposób, aby to zrobić, gdy nie trzeba dwa razy wybierać selektora? (Z jednym wkładem) – Jess

+0

+1 tę odpowiedź ... w adition. Jeśli chcesz inkrementować 1-n elementów, powinieneś użyć każdego() .... \t \t \t $ (".customcounter").każdy (funkcja() { \t \t \t \t $ (tym) .html (parseInt ($ (tym) .html(), 10), 1); \t \t \t}); – Apeiron

0

I Zakładam, że masz na myśli coś takiego?

<span id="Nbr">123</span> 

Jeśli tak, właściwość InnerHTML daje zawartość rozpiętości

0
$(".changeNumber").html(parseInt($(".changeNumber").html())+1) 
6

Jest to najbardziej kompletna odpowiedź.

  1. Roztwór avoids selector repetition
  2. Uchwyty przyrost łagodne, jeśli przedział nie ma jeszcze wartość.
<span class="changeNumber"></span> 
var $number = $('.changeNumber'); 
$number.html((parseInt($number.html(),10) || 0) + 1);