1

我正在使用这个插件进行评级(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>
4

1 回答 1

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

于 2013-06-30T08:43:51.743 回答