使用Prototype读取特定的表列

时间:2009-02-18 22:49:04

标签: javascript prototypejs

我需要读取HTML表格第一列的所有值,我不想使用DOM方法。我想要一个使用Prototype或YUI的更简单的解决方案。

注意:该表由外部团队提供的网格小部件生成。这就是我们无法确定使用哪些ID或类名的原因。

简而言之,我喜欢这样的事情:

For each row in table XXX
   value = row.column[1].value
   do something with value ...
End For

提前致谢

4 个答案:

答案 0 :(得分:2)

你应该能够做一些类似于$$('tr td:first-child')的东西,它应该从每个tr获得第一个td。然后,您应该能够使用.innerHTML来获取值。

答案 1 :(得分:1)

可能$$('tr')可能有用。它返回array of elements based on a CSS rule

答案 2 :(得分:1)

使用原型

$('thetable').childElements()[0].childElements().invoke('firstDescendant');

这一切都是级联的。第一个$('thetable')获取表格。我知道你想要最小的DOM,但显然你需要识别表格。

第二个将所有childElements作为一个数组获取并抓取第一个是tbody项。

接下来,它抓住了那些提供表行数组的元素。

最后一个调用invoke()调用该数组中每个元素的函数。在这种情况下,firstDescendant。

答案 3 :(得分:0)

这将为您提供第一列中所有文本值的数组

var arr = $$('tr:first-child').pluck('innerText');

pluck

$$