2017-08-05 2 views
1

Comment puis-je utiliser Rate Yo jQuery plugin de classement par étoiles avec attribut de données?
Est-il possible de définir une valeur initiale par défaut via l'attribut HTML?
Est-il possible d'utiliser data-rateyo-score pour passer la valeur score. Par exemple, si je veux commencer mon score en fonction d'une valeur dynamique, comment puis-je utiliser le rappel pour cela?
Comment puis-je utiliser Rate Yo plugin d'évaluation des étoiles jQuery avec attribut de données?

Mon code est le même que ci-dessous:
<div class="rateYo" data-rateyo-score="1"></div>

J'essaie ci-dessous le code:

$('.rateYo').rateYo({ 
    score: function() { 
    return $(this).attr('data-rateyo-score'); 
    } 
}); 

et ceci:

$('.rateYo').rateYo({ 
    score: $(this).attr('data-rateyo-score'); 
    } 
}); 

Mais il semble que quelque chose ne va pas.

Répondre

2

utilisation "= données rateyo de notation '1'" au lieu "données rateyo-score = '1'"

$(function() { 
 
    $(".rateyo").rateYo().on("rateyo.change", function (e, data) { 
 
    var rating = data.rating; 
 
    $(this).parent().find('.score').text('score :'+ $(this).attr('data-rateyo-score')); 
 
    $(this).parent().find('.result').text('rating :'+ rating); 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/rateYo/2.3.2/jquery.rateyo.min.js"></script> 
 
<link href="https://cdnjs.cloudflare.com/ajax/libs/rateYo/2.3.2/jquery.rateyo.min.css" rel="stylesheet"/> 
 
<div> 
 
    <div class="rateyo" 
 
     data-rateyo-rating="1" 
 
     data-rateyo-num-stars="5" 
 
     data-rateyo-score="4"></div> 
 
     <span class='score'>0</span> 
 
     <span class='result'>0</span> 
 
</div> 
 
<hr> 
 
<div> 
 
    <div class="rateyo" 
 
     data-rateyo-rating="2.4" 
 
     data-rateyo-num-stars="5" 
 
     data-rateyo-score="1"></div> 
 
     <span class='score'>0</span> 
 
     <span class='result'>0</span> 
 
</div> 
 
<hr> 
 
<div> 
 
    <div class="rateyo" 
 
     data-rateyo-rating="4" 
 
     data-rateyo-num-stars="5" 
 
     data-rateyo-score="3"></div> 
 
     <span class='score'>0</span> 
 
     <span class='result'>0</span> 
 
</div>

+0

Merci pour votre aide et réponse, j'ai plusieurs Noter l'élément dans une page et je veux définir 'rateYo' à la valeur différente pour chacun d'entre eux, mais quand je le mets sur un, il est configuré pour tous les éléments d'une certaine classe (par exemple, si la note est 1 pour le premier élément, ce sera 1 pour tous les éléments). –

+0

J'ai changé le code. Je pense est venu près de votre idée. Maintenant, chaque partie est indépendante des autres parties. Bonne chance –

+0

Sa valeur de 'data-rateyo-score' est également disponible comme votre échantillon –