2016-05-17 28 views
1

我想在ruby中創建html語句。 這是我的示例代碼。在紅寶石中插入HTML

tmp1 = "<div><font face='Arial'><span style='font-size:9pt'>&diams;Issue : #{@issue[:"Defect Type"]} (#{@issue[:"Checker"]}) found in #{@issue[:"Function"]}</span></font></div>"   
doc = Nokogiri::HTML.fragment(tmp1) 
doc.to_html 
header = Nokogiri::XML.fragment('<html><body>') 
header.at('body').children = doc 
details = header.to_html 

doc = Nokogiri::XML::DocumentFragment.parse(details) 
body = doc.at('body')   

url = "http://collab.temp.com/main/display/CQ/Checker+Guides" 
tmp2 = "<div><font face='Arial'><span style='font-size:9pt'>&diams;Review Guide : <a href=#{url}>#{url}</a></span></font></div>"      

body.add_child(tmp2) 
details = doc.to_html(:encoding => 'EUC-KR') 

當我顯示「細節」在瀏覽器中,我可以像下面一個確切的超鏈接:

♦複習指導:http://collab.temp.com/main/display/CQ/Checker+Guides

但是,如果我點擊鏈接,「網頁無法被發現'出現錯誤。

如果我複製鏈接然後粘貼到瀏覽器中,我可以成功訪問它。

所以我認爲我可能會在ruby中創建錯誤的html語句。

你能幫我解決這個問題嗎?

回答

0

環繞url屬性a錨標記(內tmp2 =線)與報價:

<a href=#{url}>#{url}</a> ⇐ incorrect 
<a href='#{url}'>#{url}</a> ⇐ correct 
+0

其實,我已經試過這兩個引號和雙引號。但我無法解決問題。 – 500004dolkong

+0

由瀏覽器»ViewSource產生的HTML是什麼? – mudasobwa

+0

我發現了這個問題的原因。我們的系統阻止超鏈接的執行。所以我無法通過點擊訪問它。感謝您的支持,@mudasobwa – 500004dolkong