2016-05-08 9 views
0

私はRailsの4.2を使用しています。私は、新しいプロジェクトを作成するためのフォームがある「新しいプロジェクト」ページを持っています。このページには、ユーザーがAjaxを使用してプロジェクトにユーザーを追加できる2番目のフォームもあります。 Ajaxは機能していますが、応答を正しくレンダリングする際に問題があります。のRails 4.2:非html_safeコンテンツにおけるAjaxの応答結果でレンダリングcollection_check_boxes

「新しいプロジェクト」フォームには、このスニペットが作成したチェックボックスのリストとして使用可能なユーザーを、示しています

<div id="disclosed_users_check_box_list"> 
    <%= f.collection_check_boxes :disclosed_user_ids, User.order(:first_name, :last_name), :id, :name_with_job_title do |b| %> 
    <%= b.check_box %> <%= b.label %><br> 
    <% end %> 
</div> 

「新しいユーザー」フォームには、新規ユーザーを作成するにはアヤックスを使用して、これに応答しますJS:

$("#disclosed_users_check_box_list").html("<%= escape_javascript(collection_check_boxes(:project, :disclosed_user_ids, User.order(:first_name, :last_name), :id, :name_with_job_title) { |b| "#{b.check_box} #{b.label}<br>" }).html_safe %>"); 

私が午前問題は終わりに.html_safeが何をやっているようには見えないということです。応答がレンダリングされると、私は生のHTMLを見る代わりに、実際のチェックボックスとラベルの、「新しいプロジェクト」ページに表示されます。

私が間違って行ってきたところの任意のアイデア?

答えて

0

は、最後にそれを解決しました!私は.html_safeを間違った場所に置いていました。ここで働いていたものです:

$("#disclosed_users_check_box_list").html("<%= j(collection_check_boxes(:project, :disclosed_user_ids, User.order(:first_name, :last_name), :id, :name_with_job_title){ |b| "#{b.check_box} #{b.label}<br>".html_safe }) %>"); 
関連する問題