2014-03-31 266 views
0

所以我工作的一個劇本,我在我負責的一組網頁上的元素它都有它是這樣一個類似的類名稱的情況:從ClassName獲取的所有元素中獲取特定元素?

<span class="values">1 </span> 
<span class="values">2 </span> 
<span class="values">23 </span> 

第三個的價值總是在變化,我想特別在列表中定義第三個。我如何定義知道它始終可以改變價值的「23」?我試圖做是得到了這種方式,但它不工作:

var numbers = document.getElementsByClassName("values"), 
    rank = numbers[3]; 

所以我在這裏做的是:

  • 我第一次得到與類名「值」的所有元素。
  • 然後我在元素

我在做什麼錯在這裏的列表定義的第三個元素?也許即使在「檢查元素」菜單中它們出現在下面,也沒有這樣的排名,所以它不知道我的意思[3]?

感謝您的幫助!

PS:我知道,第三值始終大於20

+2

它是零索引,所以它很可能是'號[2]' – adeneo

+0

給該元素一個Id並使用document.getElementById()來引用它。 –

回答

1

的數組[0],所以你要的是元素[2] 您可能還需要添加「的innerHTML」,以在即將開始獲得價值。

var numbers = document.getElementsByClassName("values"), 
    rank = numbers[2].innerHTML; 

http://jsfiddle.net/tBA73/

+1

這工作。謝謝! – bram

0

如果你想獲得的第三個元素是一個數字的排名,你應該做到以下幾點:

var numbers = document.getElementsByClassName("values"), 
    rank = parseInt(numbers[2].innerHTML, 10);