2014-03-31 78 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);