私は jQuery の 5 つ星評価システムを構築しました。評価はヒット数とともにデータベースに挿入/保存されます。星を繰り返しクリックすると、評価をデータベースに挿入する際に問題が発生します。
つまり、星が連続してクリックされた場合、評価は挿入されませんが、ヒットが挿入され、新しい結果の評価に影響します。
遅延を追加するか、クリック機能を停止して再度起動する必要があります。クリック機能に遅延を追加できるとよいでしょう。
この方法でもう一度クリック機能を停止しようとしていますが、機能しません。
jQuery:
$('.u-rating').click(function (e){
var id = $(this).parent().attr('id');
var rating = ($(this).index()+1)/2;
$.ajax({
type: "POST",
url:"rating.php",
data: {rating:rating, id:id},
cache: false,
success: function(data1)
{
get_rating();
$('#u-rating p').html('Rating Submitted');
}
});
e.preventDefault();
e.stopImmediatePropagation();
return false;
});
ユーザーが複数回評価しないようにするにはどうすればよいですか?