我需要设置属性的值以显示'x'数量的星星,但是需要在我的数据库中运行事件以获得平均值并使用该数字吗?
这是带有'data-rateit-value'属性id的HTML,就像动态修改一样。
<div id="randomtest" data-productid="randomtest" class="rateit" data-rateit-value=""></div>
我试过这个只是修改它没有事件来查询数据库,它没有设置它? 所以在我继续参加活动之前需要一些建议。
$('#randomtest').attr( 'data-rateit-value','4');
但是一旦我能够动态设置它就像我已经做了下面的基本演示? 如果没有,将非常感谢一些进一步的指导。
$.ajax({
url: 'currentvalue.php',
data: { id: productID, value: value },
type: 'POST',
success: setCurrentValue
});
function setCurrentValue(data) {
$('#randomtest').attr( 'data-rateit-value'.append(data));
}
感谢您的帮助
修改 我将查询和结果更改为此,并使用整数提醒但仍未附加到属性
$.ajax({
url: 'currentstars.php', //your server side script
data: { id: productID, value: value }, //our data
type: 'POST',
success: function(results) {
alert(results);
$('.rateit').attr( 'data-rateit-value'.append(results))
}
});
我不知道这是否有助于任何人试图弄清楚它为什么不起作用?
答案 0 :(得分:1)
首先我要说你应该检查一下你是否正在回复你对服务器的期望:
function setCurrentValue(data) {
console.log(data);
...
}
data
的结构是什么?
我不确定你想用setCurrentValue函数做什么,行$('#randomtest').attr( 'data-rateit-value'.append(data));
中有一些语法错误。
可以像attr
一样调用attr(attribute, value)
,因此$('#randomtest').attr( 'data-rateit-value', data);
可能更接近您的需求
答案 1 :(得分:0)
你正试图在属性上使用.append,我认为这不是正确的方法。 试试这个 -
$.ajax({
url: 'currentvalue.php',
data: { id: productID, value: value },
type: 'POST',
success: function(){setCurrentValue(data);}
});
function setCurrentValue(data) {
$('#randomtest').attr( 'data-rateit-value',data);
//Or $('#randomtest').data( 'rateit-value',data);
}
答案 2 :(得分:0)
我得到了它的工作!!
$.ajax({
url: 'currentstars.php',
data: { id: productID, value: value },
type: 'POST',
success: function(results) {
$('.rateit').rateit('value', (results));
}
});
使用该查询和功能我可以在加载页面和选择评级时更新到平均评分!
多么噩梦lol:)