Gem 怎么在 action 里把通过 render_cell 渲染的部分 html 作为 ajax 响应,实现局部刷新?

kee · 2014年02月26日 · 最后由 mystery 回复于 2014年02月26日 · 2695 次阅读

想通过$.ajax 获取 render_cell 的响应,发现是 object 怎么在 action 里把通过 render_cell 渲染的部分 html 作为 ajax 响应,实现局部刷新?

 respond_with(@resources) do |format|
     format.html { render :show }
 format.js {  render_cell: 'html' }
end

@mystery 这样会把完整的 html 返回(包括 header,footer),我只想要render_cell: 'html'里的

#2 楼 @kee 试一下

 respond_with(@resources) do |format|
     format.html { render :show }
     format.js {  render_cell: 'html', layout: false }
end
respond_to do |format| 
   format.json { render :json => {:success => true, :html => (render_to_string 'attachs/carousel.html.erb', layout: false)} }                                                           
   format.html { }      
end   

上边段从 stackoverflow 找到的,加上 layout:false 没有影响 @mystery 你贴的如何传递 opts 给 render_cell format.js { render_cell: 'html', :var1 => var1, layout: false } is this OK?

#4 楼 @kee 试一下

format.js { render_cell: (:cell_controller, :cell_action,  orders:  @orders ), layout: false }
需要 登录 后方可回复, 如果你还没有账号请 注册新账号