У меня есть страница, которая отображает несколько форм.В настоящее время, когда пользователь отправляет любую из этих форм, он обновляет (через ajax) элемент div на той же странице с содержимым формы, которую только что отправили.
Я также хочу удалить () формуэлемент, который был только что отправлен после того, как запрос поста ajax завершен.Однако для этого мне нужно иметь доступ к этому конкретному идентификатору формы в файле js.erb.
Так как моя страница имеет x количество форм, которые отображаются динамически, я не могу просто получить доступ к переменной экземпляра в моем js.erb.
Страница:
<% for peer_review in @peer_reviews %>
<%= render :partial => 'form', :locals => { :peer_review => peer_review } %>
<% end %>
<div id="completed_peer_reviews">
<%= render 'completed_peer_reviews' %>
</div>
@peer_reviewsПеременная экземпляра содержит массив новых объектов PeerReview, уже содержащих некоторые данные.
Форма:
<div id="peer_review_form_<%= peer_review.reviewee_id %>">
<%= form_for peer_review, :html => { :method => "post" }, :remote => true do |f| %>
<%= f.error_messages %>
<p>
Peer Review for: <%= User.find(peer_review.reviewee_id).name %><br />
</p>
<p>
<%= f.label :rating %>:
<%= f.select :rating, [1, 2, 3, 4, 5], { :include_blank => 'None' } %>
</p>
<p>
<%= f.label :review %><br />
<%= f.text_area :review %>
</p>
<%= f.hidden_field :user_id, :value => peer_review.user_id %>
<%= f.hidden_field :reviewee_id, :value => peer_review.reviewee_id %>
<%= f.hidden_field :review_period_id, :value => peer_review.review_period_id %>
<p><%= f.submit "Submit" %></p>
<% end %>
</div>
js.erb:
$("#completed_peer_reviews").html("<%= escape_javascript(render('completed_peer_reviews')) %>");
Я надеялся просто добавитьдругая строка в файле js.erb, которая удаляет элемент формы, который только что инициировал выполнение файла js.erb следующим образом:
$("#peer_review_form_<%= peer_review.reviewee_id %>").remove();
Как я на самом деле должен ссылаться на peer_review.reviewee_id здесь?Или я должен использовать совершенно другой подход?