ajax - 以父表单更新列表框

时间:2011-05-31 16:08:59

标签: ruby-on-rails

我有一个表单,用户可以创建一个播放器并将团队与其关联。 玩家表单有一个选择列表,用户可以在其中选择现有团队或选择“新”选项,该选项会显示一个弹出窗口,允许用户创建新团队并将其与播放器关联。

当用户选择“新”选项时,我使用了javascript来显示弹出窗口。

我的新团队表格如下:

<% form_remote_tag :url => {:controller => 'players', :action => 'createTeam'} do %>
    <label style="width: 150px">Team name:</label> <%= text_field_tag(:team_name, nil) %>
    <%= submit_tag("Create New Team") %>
<% end %>

控制器 - 玩家,动作 - createTeam

def createTeam
  @team = Team.create(:team_name => params[:team_name])

  respond_to do |format|
  if @team.save
    flash[:notice] = 'Team was successfully created'
    format.html { redirect_to teams_path }
    format.js
  else
    flash[:notice] = "Team failed to save."
    format.html { redirect_to teams_path }
  end

  end
end

我希望每次添加团队时都能动态更新父表单中的选择列表(new.html.erb for player)。

我对如何做到这一点感到有点困惑。

如果有人能给我一个关于如何前进的想法,我将不胜感激。

非常感谢你提出的任何建议。

1 个答案:

答案 0 :(得分:0)

您需要使用类似replace_html的内容来重新呈现列表。 This所以问题可以帮助你。