1

RoR の content_for に問題があります。コントローラーへのリモート呼び出しがあります。コントローラーには javascript update.js.erb が含まれており、部分的な _update.html.erb をレンダリングします。部分的な content_for 内には、その内部にHTMLページのHeadに追加する必要があるjavascript

コントローラ

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

レイアウト application.html.erb

<head>
....

<%= yield :head1 %>

....
</head>
4

1 に答える 1

1

これはうまくいきません。クライアント側で HTML を操作していることを思い出してください。レイアウトは既にレンダリングされています。

のヘッドに変更を追加しますupdate.js.erb

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