Rails Ajax Render Partial(投票系统)

我无法通过Ajax请求重新呈现部分内容。 我现在可以通过js文件传递其他内容,例如alert(),甚至更改当前div中的html。 但是当我尝试渲染部分(在这种情况下为评级)时,什么都不会刷新。 部分在它们在分页和加载时渲染的意义上工作得很好,但是在我点击upvote或downvote之后却没有。 我正在使用嵌套的部分,以便首先渲染_tracks,然后_rating。 这就是我所拥有的……我错过了什么?

vote.js.erb

$(".rating").html(" 'rating')) %>") 

有了这个,我也是这些,没有成功。

  $(".rating").html("") $(".rating").html(" "rating", :locals => { :track => track }) ) %>") 

另一方面,这确实有效:

 $(".rating").html("") 

_tracks.html.erb

   
"rating", :locals => { :track => track } %>
<a href="https://stackoverflow.com/questions/11654021/rails-ajax-render-partial-voting-system/">

_rating.html.erb

    "up"), :remote => true %>       "down"), :remote => true %>    

跟踪控制器

 @vote.update_attributes(:vote_type => params[:type]) if @vote.save respond_to do |format| format.html {redirect_to :back} format.js end 

 $(".rating").html("<%= escape_javascript( render( :partial => "rating", :locals => { :track => track }) ) %>") 

需要是

 $(".rating").html("<%= escape_javascript( render( :partial => "rating", :locals => { :track => @track }) ) %>") 

@符号传递变量,与之前部分中不需要它的for循环不同。 现在工作正常。