0

在 Rails 的 RJS 适配器中,

page['id'] // $('id')

访问一个 CSS-id,

page['id'].property // $('id').property

它的一个属性。但是我怎样才能访问数组索引,例如

page.select('ul').value_at(2) // $('id').select('ul')[2]

有没有不写的方法:

page << "$('id').select('ul')[2]"
4

1 回答 1

2

你不能从 rjs 访问这样的数组,但是,这些中的任何一个都可以工作:

page['id']['firstChild']['nextSibling']
page['id'].down(2)

生成:

$("id").firstChild.nextSibling;
$("id").down(2);

当然,最好的解决方案是向第二个元素添加一些标识 css 类或元素 id,然后从 rjs 文件中选择。

如果你想坚持使用 page.select,你可以像这样实现 value_at(这里称为 pick):

>>> Array.prototype.pick = function(n) { return this[n]; };
function()
>>> ['a', 'b', 'c'].pick(1)
"b"
于 2010-07-31T23:54:25.700 回答