【问题标题】:Sanitize not working for the 'p' and 'br' tags消毒不适用于“p”和“br”标签
【发布时间】:2014-06-10 11:37:38
【问题描述】:

我有一条短信:

<p>This is some text <br/> with two<br /> lines</p>

这是我期望的输出:

This is some text <br/> with two<br /> lines

我在我的模型中使用了助手(我知道,但这正是我想要的方式):

result = ActionView::Base.full_sanitizer.sanitize(text, :tags => ['br'])

但它不起作用。我得到没有任何标签的结果:

This is some text with two lines

我也试过了:

result = ActionView::Base.full_sanitizer.sanitize(text, :tags => %w(br))

但是没有用。

出了什么问题,如何检索包含 &lt;br/&gt; 标记的文本?

【问题讨论】:

  • 嗯,full_sanitizer 代码是什么意思?那个类是helper的一部分,我没写,只是用过
  • 助手config.action_view.sanitized_allowed_tags = 'br'中有这行吗?
  • 我没有,那是因为我想手动指定标签。下面的答案效果很好。无论如何感谢您的努力

标签: ruby-on-rails actionview


【解决方案1】:

我想你试试这个

text = "<p>This is some text <br/> with two<br /> lines</p>"
#=> "<p>This is some text <br/> with two<br /> lines</p>" 
result = ActionController::Base.helpers.sanitize(text, :tags => ['br'])
#=> "This is some text <br /> with two<br /> lines" 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-14
    • 2012-10-30
    • 1970-01-01
    • 1970-01-01
    • 2011-01-02
    相关资源
    最近更新 更多