Haml%noscript标记生成错误的html结果

时间:2019-04-25 12:39:21

标签: ruby-on-rails-5 haml

这是我的红宝石/ haml代码

%noscript
  %iframe{ :src => "https://www.googletagmanager.com/ns.html?id=#{key}", :style => "display:none;visibility:hidden",:height => "0", :width => "0"}

这是预期的html输出。

<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-XXXXXX"
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>

但它会生成

<noscript>
"
<iframe height='0' src='https://www.googletagmanager.com/ns.html?id=GTM-XXXXXX' style='display:none;visibility:hidden' width='0'></iframe>
"
</noscript>

如您所见,iframe用“”引号引起来。为什么会这样呢? 我还尝试使用src:“ ...”而不是使用:src =>“ ...”,但是id不能工作。

1 个答案:

答案 0 :(得分:0)

您如何查看生成的HTML?看起来您正在使用浏览器检查器,该检查器在显示时添加了引号。它们不会出现在实际的HTML中。如果您使用“查看源代码”而不是元素检查器,则应该看到期望的结果。