Это как мой взгляд выглядит (не обращайте внимания на открытие и закрытие тегов):rails3 ajax: Каков наилучший способ сохранения локальных переменных через ajax?
@obj1.leaves.each do |l|
<div id = "form">
if <some_condition>
render :partial => 'shared/view1', :locals => { :l => l }
else
render :partial => 'shared/view2', :locals => { :l => l }
end
</div>
end
И окончательное действие на view1 вызывает view2 для отображения и наоборот через AJAX. Но когда визуализируются view1 или view2, локальная переменная 'l' больше не распознается и выдает ошибку, из-за которой формы не отображаются (кроме обновления страницы вручную). Что я делаю, чтобы формы работали и сохраняли мои «l»?
Спасибо за вашу помощь заранее.
EDIT: Мой файл create.js.erb для view1 (view2 я на самом деле уничтожить метод так, наоборот):
$("#form").replaceWith("<%= escape_javascript(render('shared/view2')).html_safe %>")
И мой фактический вид:
<%= form_for([l, l.likes.build], :remote => true) do |f| %>
<div class="actions"><%= f.submit "Like" %></div>
<% end %>
Что не удается, тот, который вы показываете, или Ajax, который показывает другой? –
форма, обработанная ajax, не удалась – Ari53nN3o
Затем показ части, которая сделает это, было бы полезно. –