2012-11-10 17 views
0

好的,我有一個廣告系列javascript,我需要爲一個網站。該網站是在SSL和運動不那麼瀏覽器攔截請求爲什麼這個js沒有顯示在我的rails視圖中?

因此,要解決我正在通過application_controller

before_filter :get_campaign 

def get_campaign 
    uri = URI.parse("http://us1.campaign-archive1.com/generate-js/?u=2f77d2f8c77398c0b064223ba&fid=1&show=3") 
    begin 
    @campaign = Net::HTTP.get_response(uri).body 
    end 
end 

,並在視圖中做請求我做

 %script{:language => "javascript", :type => "text/javascript"} 
     = @campaign.try(:html_safe) 

因爲@campaign是一個document.write字符串...但由於某種原因,它不寫...我是否缺少一些東西或是否有更好的方法來實現這個

UPDATE

鉻查看控制檯後,我看到這個錯誤Uncaught SyntaxError: Unexpected token <

這是我生成的代碼

<script language='javascript' type='text/javascript'> 
        document.write("<div class=\"display_archive\"><div class=\"campaign\">08\/29\/2012 - <a href=\"http:\/\/us1.campaign-archive1.com\/?u=2f77d2f8c77398c0b064223ba&id=4c4d33ed6f\" title=\"Ten Fun Facts and Figures from Gen Con Indy 2012\" target=\"_blank\">Ten Fun Facts and Figures from Gen Con Indy 2012<\/a><\/div><\/div>"); 
        <br> 
        <div class='display_archive'></div> 
        <div class='campaign'> 
        Select 
        <a href='http://eepurl.com/jkmGT' target='_blank'>HERE</a> 
        to sign up for our newsletter! 
        </div> 
       </script> 
+0

首先檢查「@ campaign」是否爲空。 – HungryCoder

+0

@campaign不是空的...我只是注意到控制檯中的錯誤..我會更新我的問題 – Trace

+0

我剛更新了我的問題 – Trace

回答

1

你下載的JavaScript片段包含不能使用轉義字符你正在阻止逃跑事件的發生。通常在CDATA標籤中包裝這種東西。 JavaScript的過濾器這是否適合你,如果CDATA支持打開(這是默認情況下,XHTML)引入haml:

:javascript 
    #{@campaign} 
0

爲什麼你有一個HTML腳本標籤裏面?我很確定這就是問題所在,你應該刪除你的@campaign中的所有內容,包括br

@campaign.gsub!(/<br.*/, "") 
相關問題