大家好。我使用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时做错了,但我没有得到。
答案 0 :(得分:0)
使用form_for
代替form_tag