从标记中获取属性data- *

时间:2013-08-27 09:46:15

标签: ruby-on-rails ruby nokogiri

我试图从img标签获取数据目标属性

Html:

<img src="my src" alt="my_alt" data-target= "my_target1" />
<img src="my src" alt="my_alt" data-target= "my_target2" />
<img src="my src" alt="my_alt" data-target= "my_target3" />
<img src="my src" alt="my_alt" data-target= "my_target4" />

Ruby:

my_html.css("img").each do |img|
 puts img[:src]
 puts img[:data-target]
end

img [:src]工作正常但img [:data-target]

的情况并非如此

2 个答案:

答案 0 :(得分:2)

只需要引用带有破折号(或其他特殊字符)的符号。

puts img[:'data-target']

答案 1 :(得分:0)

对于这种类型的数据,您必须使用rails方式制作标签

<%= content_tag(:img, :src => "#2012-09-29", :alt => "my_alt" :data => { :my_data => "my_target1" } ) %>

然后您可以使用:my_data

访问它