我正在使用jquery raty plugin ,有一个click event我用它来发送评级数据,然后从数据库返回新的评级,但我不知道如何更新返回的评级,我的代码:
$('.starrating').raty({
number:10,
score: function() {
return $(this).attr('data-rating');
},
click: function(score, evt) {
var contentid = $(this).attr('id');
$.post('/main/rating.php',{score:score, contentid:contentid },
function(data){
//alert(data+' Score = '+score);
$(this).data('rating',2);
});
}
});
我尝试了以下但没有成功;
$(this).data('rating',2);
感谢您的帮助。
最佳答案
根据raty文档尝试$(this).raty({ Score: 2 });
附注如果您还需要设置数据属性,可以尝试以下操作: $(this).raty({ Score: 2 }).attr('data- rating', 2);
P.P.S。用于正确处理多个元素的少量 click
事件更新
$('.starrating').raty({
number:10,
score: function() {
return $(this).attr('data-rating');
},
click: function(score, evt) {
var target = $(this),
contentid = target.attr('id');
$.post('/main/rating.php',{score:score, contentid:contentid },
function(data){
target
.raty({
score: data.score
})
.attr('data-rating', data.score);
});
}
});
关于javascript - 如何更新比率值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15637700/