如何防止HAML编码我的帮助方法

时间:2011-01-31 10:12:56

标签: ruby-on-rails ruby haml

所以我帮助了这个:

    content_tag(:li, "All", { :onclick => %(hideAll(); document.getElementById("vl-body").children[0].style.display = "block") } ) +

和HAML制作了这个:

<li onclick="hideAll(); document.getElementById(&quot;vl-body&quot;).children[0].style.display = &quot;block&quot;">All</li>

不能有那些编码的引号。我想使用%表示法而不是双引号,所以感谢使用%HAML不会像这样编码的帮助。

提前致谢。

1 个答案:

答案 0 :(得分:2)

#your view

%li#some_id
  All

#application.js without jquery
document.getElementById('some_id').click(function(){
  hideAll(); 
  document.getElementById("vl-body").children[0].style.display = "block";
});

另类不太自以为是的答案:

content_tag(:li, "All", { :onclick => %(hideAll(); document.getElementById("vl-body").children[0].style.display = "block") } ).html_safe

我注意到你的content_tag代码中的尾随加号,这很重要吗?