我有一个表单,使用"remote => true"
将2个字段发布到服务器,并且我的控制器中有format.js
。
如果我在我的create.js.erb中使用对象值,它可以正常工作但如果我想渲染一个包含的文件,则js无法这样做。
我有一个带有id的容器div,它将使用数据进行更新。
create.js.erb文件如下所示:
$('#container').html(<%= escape_javascript(render('index')) %>);
我的控制器看起来像这样:
def create
@casepost = Casepost.new(params[:casepost])
respond_to do |format|
if @casepost.save
@caseposts = Casepost.all
format.html
format.js# { render json: @casepost, status: :created, location: @casepost }
else
@caseposts = Casepost.all
format.html { render action: "new" }
format.js# { render json: @casepost.errors, status: :unprocessable_entity }
end
end
end
我要渲染的文件会显示名为@caseposts的数组的内容。
<table>
<tr>
<th>Title</th>
<th>Body</th>
<th></th>
<th></th>
<th></th>
</tr>
<% @caseposts.each do |casepost| %>
<tr>
<td><%= casepost.title %></td>
<td><%= casepost.body %></td>
<td><%= link_to 'Show', casepost %></td>
<td><%= link_to 'Edit', edit_casepost_path(casepost) %></td>
<td><%= link_to 'Destroy', casepost, confirm: 'Are you sure?', method: :delete %></td>
</tr>
<% end %>
</table>
<br />
<%= link_to 'New Casepost', new_casepost_path %>