1

ページに5つの評価オプションがあるjquery rateyを使用しています。score5つすべての評価を集計したいと思います。私は各評価に独自の ID#targetKeep1 #targetKeep2などを与えました...そしてscoreNameを一意に変更しました。どうにかしてすべてのスコアを合計して表示したいと思います。どうすればこれを行うことができますか?

のようなものfunction(score, evt) { var answer1 = score; var answer2 = score; var answer3 = score; etc.. }でしょうか?

<script type="text/javascript">
    $(function() {
      $.fn.raty.defaults.path = 'img/';
      $('#targetKeep1').raty({
        cancel      : false,
        width       : 310, 
        number      : 6,
        target      : '#targetKeep1-hint',
        single      : true,
        hints       : ['0', '1', '2', '3', '4' , '5'],
        targetKeep  : true,
        scoreName   : 'answer1',
          click: function(score, evt) {
    alert('ID: ' + $(this).attr('id') + "\nscore: " + score + "\nevent: " + evt);
  }
      });
    });
    $(function() {
      $.fn.raty.defaults.path = 'img/';
      $('#targetKeep2').raty({
        cancel      : false,
        width       : 310, 
        number      : 6,
        target      : '#targetKeep2-hint',
        single      : true,
        hints       : ['0', '1', '2', '3', '4' , '5'],
        targetKeep  : true,
        scoreName   : 'answer2',
      });
    });
4

1 に答える 1

1

scoreName別の理由で必要でない限り、私はユニークを気にしません。

targetKeep私は、あなたがratyを呼び出した関連するdivにクラス(例えば)を割り当てます。

score次に、標準フィールドを使用して次のことができます。

var totalScore = 0;
$(".targetKeep").each( function(tK) {
   if (typeof($(tK).raty('score')) != "undefined") {
      totalScore += $(tK).raty('score');
   }
});

ここでフィドル

于 2013-09-17T15:37:50.323 に答える