评级明星javascript

时间:2013-06-30 08:34:30

标签: javascript jquery raty

我正在使用此插件进行评分(http://wbotelhos.com/raty/)。基本上,我正在显示多个项目,每个项目都有自己的评级星。问题是,它只显示第一个结果为'2.3',然后将其应用于所有剩余的项目。我该如何解决这个问题?

<ul>
  <li>
    <div class="num_ratings">2.3</div>
    <p class="rating-stars"></p>
  </li>
  <li>
    <div class="num_ratings">4.1</div>
    <p class="rating-stars"></p>
  </li>
  <li>
    <div class="num_ratings">3.0</div>
    <p class="rating-stars"></p>
  </li>
  <li>
    <div class="num_ratings">3.3</div>
    <p class="rating-stars"></p>
  </li>
</ul>



<script>
            $.fn.raty.defaults.path = 'img';
                rating = parseInt($('.num_ratings').html());
              $('.rating-stars').raty(
                {
                    width: 112,
                    readOnly  : true,
                    score: rating,  
              });
        </script>

1 个答案:

答案 0 :(得分:1)

试试这样:

$.fn.raty.defaults.path = 'img';

$("li").each(function(){
   rating = $('.num_ratings' , this).text();
   $('.rating-stars' , this).raty(
   {
       width: 112,
       readOnly  : true,
       score: rating,  
   });
});

通过这种方式,它会在每个li上运行,获取其num_ratings数据并在其特定rating-stars p中创建评分。