1

我对 RoR 中的 content_for 有问题,我对控制器进行了远程调用,它包含 javascript update.js.erb 渲染部分 _update.html.erb 并且在部分 content_for 内部有一个需要添加到html页面头部的javascript

控制器

def uploadimage
  respond_to do |format|
    format.js 
  end
end

更新.js.erb

$('#reloadimage').html("<%= escape_javascript( render 'users/crop' )%>");

部分 _crop.html.erb

<% content_for(:head1) do %>

<%= stylesheet_link_tag "jquery.Jcrop" %>
<%= javascript_include_tag "jquery.Jcrop.min" %>
<script type="text/javascript" charset="utf-8">
$(function() {
  $('#cropbox').Jcrop({
    onChange: update_crop,
    onSelect: update_crop,
    setSelect: [0, 0, 500, 500],
    aspectRatio: 1
  });
});
</script>

<% end %>

布局 application.html.erb

<head>
....

<%= yield :head1 %>

....
</head>
4

1 回答 1

1

这是行不通的。请记住,您正在客户端操作 HTML,布局已经呈现。

将您的更改添加到头部update.js.erb

$("head").append(.....);
于 2013-04-24T09:55:45.760 回答