Javascript 如何更新raty值
我正在使用,我正在使用它发送评级数据,然后从数据库返回新评级,但我不知道如何更新返回的评级,我的代码:Javascript 如何更新raty值,javascript,jquery,raty,Javascript,Jquery,Raty,我正在使用,我正在使用它发送评级数据,然后从数据库返回新评级,但我不知道如何更新返回的评级,我的代码: $('.starrating').raty({ number:10, score: function() { return $(this).attr('data-rating'); }, click: function(score, evt) {
$('.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);
谢谢你的帮助。试试$(this).raty({score:2})代码>根据raty文件
另外,如果您还需要设置数据属性,可以尝试以下操作:$(this).raty({score:2}).attr('data-rating',2)代码>
p.p.S.Little单击事件更新以正确处理多个元素
$('.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);
});
}
});
根据您对参数重置的评论,我在下面添加了一些想法
//SET RATY DEFAULTS
$.fn.raty.defaults.path = 'img';
$.fn.raty.defaults.cancel = true;
//etc
在成功功能中,使用新数据重置评级。只有指定的选项将被覆盖
$(this).raty('set', { option: value });
例如,更新分数
$(this).raty('set', { score: 2 });
如果您在中遇到问题,请尝试下面的代码(基于此答案)
注意:此代码均未经测试 在这方面遇到了一些麻烦,这对我来说很有效:
$('.rating').raty('score', score);
通过设置$.fn.data
您只能设置链接到元素的jquery数据缓存。即使是真实的数据属性我也已经有了,我必须动态地更新评级值。谢谢你,它可以工作,但不是用$(这个),而是用元素名$('.starting'),我必须在callabck中重新添加.raty({params})中的所有参数,这不是非常有效的方法,但是因为没有其他方法可以找到,谢谢你将它解决。
$('.rating').raty('score', score);