Index.html.erb有一个表单和一个表 我使用Ajax使表单提交而不重定向
<%= form_for approval,remote: true do |f| %>
<%= f.check_box :pass %>
<%= f.submit%>
<% end %>
但我也希望一旦我从下面提交,而不刷新,表格就会更新。
<% @approval.each do |approval| %>
<td><%= approval.progress %></td>
<% end %>
控制器
class ApprovalController < ApplicationController
def index
@approval = Approval.where(user_id: id)
end
def update
@approval.update_attributes(app_params)
redirect_to approvals_path
end
end
如何实现这一目标?
答案 0 :(得分:0)
创建create.js
并使用<td>
create.js
附加到表格中
<强> approvals_controller.rb 强>
class ApprovalController < ApplicationController
def create
@approval = Approval.new(params[:approval])
@approval.save
respond_to do |format|
format.js
end
end
end
<强> create.js.erb 强>
<% if @approval.valid? %>
$('#wrapper').append("<td><%= @approval.progress %></td>")
<% end %>
注意: #wrapper
是循环的包装
答案 1 :(得分:0)
首先,您必须序列化您的表单。然后使用序列化数据,您可以执行以下操作:
NSString
这是一个很容易做到的选择。