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
如何达到这个目标?
最佳答案
创建一个create.js
并使用<td>
将表数据create.js
附加到表中
rovings_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
是循环的包装器