2012-04-23 57 views
0

我想要做的就是创建一个HTML页面,其中包含与该文本关联的链接和名称/文本列表。如何将锚文本添加到我正在使用Nokogiri构建的HTML文档中的链接?

E.g. <a href="www.google.com">Google</a>

我可以将Google更改为我想要的任何文本(包括来自变量的数据)。

我有这样的:

builder = Nokogiri::HTML::Builder.new do |doc| 
    doc.html { 
     doc.body { 
      contents.each do |i| 
       doc.p { 
        doc.a(:href => list.first) 
        } 
      end   
      }   
     } 
end 

这只是产生这样的:

<html><body><p><a href="someurl.com"></a></p></body></html> 

我想要的是,虽然是什么:

<html><body><p><a href="someurl.com">First Link</a></p></body></html> 

我该怎么做,在引入nokogiri ?

谢谢。

回答

3
doc.a 'text_goes_here', :href => 'href_goes_here' 
1

其实......只是想通了。我只需要加doc.text "First Link"

所以更新的代码段是这样的:

builder = Nokogiri::HTML::Builder.new do |doc| 
    doc.html { 
     doc.body { 
      contents.each do |i| 
       doc.p { 
        doc.a(:href => list.first) { 
          doc.text "First Link" 
         } 
        } 
      end   
      }   
     } 
end 

就像一个魅力。

相关问题