只有第一行表,记录正在更新

时间:2014-03-05 08:14:14

标签: ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.2

大家好。我使用rails 3.2.13和ruby 1.9.3。

我实现了jquery模态视图。有记录表。某些列有名为** Make Session End **的链接。如果我点击Make Session End链接,弹出窗口会显示两个单选按钮结束,然后按下按钮确定。

如果我点击确定它可以正常工作**表的第一个记录**。但是对于其他记录,没有单击OK按钮,因此** put **动作不会被执行。代码是这样的:

<table>
<% @course.course_topics.each_with_index do |course_topic, i| %>
<td><%= course_topic.name %></td> 
<td><%= link_to "start session", topic_course_course_topic_path(:account_id =>current_user.account_id,:course_id=>@course,:id=>course_topic) %></td>

<td><%= link_to_function "Make Session End", :onclick => "return_ids('#{course_topic.id}')" %></td>


<div id="dialog-modal-<%= course_topic.id %>" class="session_end_form" title="Basic modal dialog">
    <%= form_tag(session_end_course_course_topic_path(current_user.account_id, "#{params[:id]}", course_topic.id), :method => :put) %>

    <%= hidden_field_tag :course_topic_id, course_topic.id %>
    <%= hidden_field_tag :user_account, "#{params[:account_id]}" %>

    <p><%= radio_button_tag :session_status, "session_break"%>Break Session</p>
    <p><%= radio_button_tag :session_status, "session_end" %>Session Finished</p>

    <div class="session_popup_buttons">
      <span style="margin-left: 10px;">
        <%= submit_tag "OK" %>
      </span>
    </div>
  </div>

</tr>
 <%end%>
</table>

<script>
  function return_ids(id) {
    $("#dialog-modal-" + id).dialog({
    height: 300,
     modal: true
  });
  }
</script>

可能是我在传递ID时做错了,但我没有得到。

1 个答案:

答案 0 :(得分:0)

使用form_for代替form_tag