Javascript A最大平均评级条赢得';t在轨道上重新装载

Javascript A最大平均评级条赢得';t在轨道上重新装载,javascript,ruby-on-rails,ruby,ajax,rating,Javascript,Ruby On Rails,Ruby,Ajax,Rating,我正在开发一个带有评级系统的RubyonRails应用程序。到目前为止,评级工作正常。我还将它调整为ajaxified,它可以工作。我还想在一个条形图中显示当前评级的平均值,该条形图的长度对应于所有评级的平均值 该条的长度设置如下 var average = parseFloat( $(".rating_filled").attr("data-average") ); var avg_width = (average/5)*200; $(".rating_filled").css("wid

我正在开发一个带有评级系统的RubyonRails应用程序。到目前为止,评级工作正常。我还将它调整为ajaxified,它可以工作。我还想在一个条形图中显示当前评级的平均值,该条形图的长度对应于所有评级的平均值

该条的长度设置如下

var average = parseFloat( $(".rating_filled").attr("data-average") );

var avg_width = (average/5)*200;


$(".rating_filled").css("width", avg_width);
    <div class="rating_bar">
        <div class="rating_filled" data-average="<%=@game.ratings.average(:value) %>"></div>
    </div>
值在html中传递,如下所示

var average = parseFloat( $(".rating_filled").attr("data-average") );

var avg_width = (average/5)*200;


$(".rating_filled").css("width", avg_width);
    <div class="rating_bar">
        <div class="rating_filled" data-average="<%=@game.ratings.average(:value) %>"></div>
    </div>

通过ajax,我重新加载包含此条和其他统计信息的完整部分。除了酒吧,所有的东西都被重新装好了。一旦我提交了评级,我就得到了当前的平均值,但该条完全消失了。Firebug指出,该条本身接收到最近提交的值,因此工作正常,但缺少图形部分

所以我猜这是因为javaScript文件(定义了图形长度)没有通过ajax重新加载,因此根本没有显示该条

我不知道我是否只需要自定义jQuery命令以使其保持最新,或者甚至在控制器中执行一些操作,通过Json传递这些内容

我不知道,你们能帮帮我吗?
非常感谢

这就是我的partial看起来的样子

<div class="rating_stats">
<div>
    Durchschnittswert:
    <span class="rating_avg">
    <% if !@game.average_rating.present? %>
        unbewertet
    <% else %>
        <%= @game.ratings.average(:value).round(2) %>
    <% end %>
    </span>
    <div class="rating_bar">
        <div class="rating_filled" data-average="<%= @game.ratings.average(:value) %>"></div>
    </div>
</div>

<div>
    Anzahl Wertungen: 
    <span class="rating_amount"><%= @game.ratings.count %></span>
</div>

<% if user_signed_in? %>
<p>
    Ihre Wertung :
    <span class="current_user_rating">

        <%= current_user_rating %>

    </span>
</p>
<% end %>

Durchchnittswert:
吐温
安扎尔·维尔通根:

Ihre Wertung:


如何重新加载所有内容?您需要重新运行最初用于设置宽度的JS。如果你在JS中包含了相同的行,在那里你可以重新加载部分,那么你就可以做生意了。这就是重点…这可能是非常基本的,但是我如何重新加载JS呢?还是说我应该在html.erb部分中嵌入javascript?这不是冒犯了JS的rails概念吗?这取决于您如何重新加载部分-如何将部分呈现到页面中?我就是这样做的:$('.rating_stats')。替换为(“'ratings/rating_stats')%>”;正如我所说的,部分包含所有实例变量,以显示平均值和数量,以及特定的条…只有条图形宽度不会被重新加载…您可以编辑您的帖子,以包括整个部分,其中这一行被调用吗?我仍然不确定整个背景是什么!将javaScript代码嵌入到部分代码中效果很好!谢谢你的忠告!