ruby on rails 3-如何使用HAML插入特殊的HTML符号



当我说:

%p= item.price + " dollars"

我得到

50 美元

而不是具有不可破坏的空间符号。

如何使用HAML插入此符号和其他特殊符号?

怎么样

%p= item.price + " dollars".html_safe

使用!=而不是=

请参阅haml参考中的"取消HTML的标题":http://haml.info/docs/yardoc/file.REFERENCE.html#unescaping_html

插值选项:

%p= "#{item.price} dollars".html_safe

我尝试以不同的方式使用html_safe,但都不起作用。ngn建议使用xa0也不起作用,但它让我尝试了非中断空间的Unicode转义,它确实起了作用:

"FOOu00a0BAR"

甚至不需要.html_safe(当然,除非字符串中的其他东西需要它)。

Ruby编程语言第一版说:"在Ruby 1.9中,双引号字符串可以包括带有u转义的任意Unicode转义字符。在最简单的形式中,u后面正好跟有四个十六进制数字…"

这个答案是针对一个略有不同的问题,但我发现这个问题正在搜索…
如果您有一个提交标记%input{ :type => "submit", :value => " dollars", :name => "very_contrived" },即使您在:value上抛出html_safe,它也不会评估html
解决方案是使用rails助手。。。duh

= submit_tag " dollars".html_safe

这很明显,但它绊倒了我。遗留代码+轨道升级=这类东西:P

您可以在字符串中使用xa0而不是 。0xa0是非中断空格的ASCII代码。

我更喜欢将字符本身与转义HTML方法一起使用,其中大多数符号都不是空白字符。这样我就不必记住所有的html代码。至于我更喜欢使用CSS的空白字符,这是一种更干净的方式。

%p&= "#{item.price} $%&#*@"

相关内容

  • 没有找到相关文章

最新更新