我有一些 jQuery 函数和嵌套表单的视图:
...
#top part, in the initial form
<div class="checkboxOptions games show-tabs">
<% @games.each do |game| %>
<div class="show-tab">
<div class="checkbox uncheckBoxed">
<%= check_box_tag "", game.id, @tournament.game_ids.include?(game.id), :onclick => "toggleCheckboxImage(this, '');" %>
</div>
<img src="<%= game.logo_url.to_s %>" class="game-logo-label" />
</div>
<% end %>
</div>
...
#'second part' of the form - but in the same view
<div class="tabs">
<% @tournament.sub_tournaments.each do |sub| %>
<% end %>
</div>
...
当其中一个复选框被选中时,表单的第二部分通过 jQuery 打开,用户继续输入必要的信息——这一切都很好。
问题是,我需要在“第二部分”中调用的一些变量(@tournament.sub_tournaments
作为主要示例 - 每个选择的游戏都变成了一个sub_tournament
)取决于在“第一部分”中检查了哪些游戏表格。当页面加载时,@tournament.sub_tournaments
构建,但只是一个空对象。页面加载成功,但在检查游戏后,我无法访问所需的信息。
单击复选框时,如何重新加载视图(或理想情况下,只是部分)?
很长一段时间以来,我一直被困在这个问题的迭代上,并取得了不同程度的(部分)成功——但最终我不知道如何重新加载,这才@tournament.sub_tournaments
是真正让我受不了的。