使用ajax实现Ruby on Rails的content_for



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

控制器

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

update.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 %>

layaout application.html.erb

<head>
....
<%= yield :head1 %>
....
</head>

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

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

的头部
$("head").append(.....);

最新更新