@changelog:thx很多为您的答案。再次
<script type="text/javascript">
<%= yield :myjs %>
</script>
谢谢!:
描绘的线下问题解决了由封闭在适当的JavaScript代码中的<%= yield :myjs %>
如下
我试图执行它,你说话的方式,但我有一些困难:
我把下面content_for块在我show.html.erb的顶部:
<% content_for :myjs do %>
jQuery(document).ready(function($) { alert('hello'); });
<% end %>
在我的layout.html我包括所有的JavaScript如下(这里applications.js实现了一些普通的jQuery功能):
<head>
...
<%= javascript_include_tag 'jquery', 'application' %>
<%= javascript_tag "var AUTH_TOKEN = #{form_authenticity_token.inspect};" if protect_against_forgery? %>
<% yield :myjs %>
</head>
<body>
...
问题是,当我调用它时,我的javascript不会显示在页面的源代码中。此外,警报功能未被调用。 当我用<%= yield :myjs %>
代替(用=)时,javascript会显示在我身体块的开头,而不是头部,但仍然在打开页面时不会调用警报函数。
对不起。我会修复我的答案以供将来参考。很高兴我能帮上忙。 – changelog 2008-11-04 15:21:40