簡體   English   中英

為什么只有手動輸入我的字符串才能工作?

[英]Why will my string only work when I put it in manually?

這是存儲在數據庫中的確切字符串:

@blog_post.content = "<p><img src=\"http://localhost:3000/assets/sa_clubbing_logo.png\" alt=\"Sa_clubbing_logo\"><div><b>An image</b></div><div><b><br></b></div><div><b>Another image</b></div><div><b><img src=\"http://localhost:3000/assets/sa_clubbing_logo.png\" alt=\"Sa_clubbing_logo\"><br></b></div></p>" 

如你看到的。 它由一些圖像和一些粗體文本組成。

好的,所以我將html保存在數據庫中。 我試圖將html附加到這樣的內容可編輯div(我的RTF編輯器)上。

  $(document).ready(function(){  

  $('#rte').append("<%= @blog_post.content %>");

  });

它顯示在我的內容可編輯div中,但顯示為實際文本。 我希望將其呈現為html,以便實際顯示圖像。 似乎要附加的html是這樣的:

<p>&lt;p&gt;&lt;img src="http://localhost:3000/assets/sa_clubbing_logo.png" alt="Sa_clubbing_logo"&gt;&lt;div&gt;&lt;b&gt;An image&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Another image&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;img src="http://localhost:3000/assets/sa_clubbing_logo.png" alt="Sa_clubbing_logo"&gt;&lt;br&gt;&lt;/b&gt;&lt;/div&gt;&lt;/p&gt;</p>

因此,我嘗試手動將字符串放入append方法,然后得到了我想要的:

  $(document).ready(function(){  

  $('#rte').append("<p><img src=\"http://localhost:3000/assets/sa_clubbing_logo.png\" alt=\"Sa_clubbing_logo\"><div><b>An image</b></div><div><b><br></b></div><div><b>Another image</b></div><div><b><img src=\"http://localhost:3000/assets/sa_clubbing_logo.png\" alt=\"Sa_clubbing_logo\"><br></b></div></p>");

  }); 

此處附加的html是這樣的:

<p><img src="http://localhost:3000/assets/sa_clubbing_logo.png" alt="Sa_clubbing_logo"></p><div><b>An image</b></div><div><b><br></b></div><div><b>Another image</b></div><div><b><img src="http://localhost:3000/assets/sa_clubbing_logo.png" alt="Sa_clubbing_logo"><br></b></div><p></p>

圖像以我想象的方式顯示在編輯器中。

為什么當我手動插入字符串而不是使用<%= @blog_posts.content %>

我一定在這里缺少某種格式問題。

更換:

<%= @blog_post.content %>

帶有:

<%=raw @blog_post.content %>

要么:

<%== @blog_post.content %>

甚至:

<%= @blog_post.content.html_safe %>

說明:

Rails默認情況下會保護您,因此您必須告訴何時考慮html安全。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM