Я делаю систему рейтинга, чтобы оценить фильм, используя 5 звезд. Для этого я использую jQuery bar plugin
(jQuery bar plugin).переменная плагина jQuery звезды неверно возвращается
Кто-то может голосовать от 1 до 5. Данные хранятся в базе данных. После того, как кто-то проголосует, звезды будут отключены и покажут количество звезд, оцененных пользователем.
Значение initialRating
плагина определит, сколько звезд выбрано. Поэтому, если эта переменная составляет 4, 4 звезды будут окрашены.
Если у меня жесткий код, например initialRating: 4
, он работает. Хотя, когда я использую initialRating: currentRating
(проголосованное количество звезд), он не вернет правильное количество, и он просто покажет 1 звезду. Когда я console.log
currentRating
он вернется 4
.
Так как же получается, что hardcoding 4
работает, а не currentRating
(со значением 4), который не работает.
код
$(function() {
currentRating = $(".rating").val(); //Getting the value that someone vote previously
console.log(currentRating); // Displays 4
$('#rating').barrating('show', {
theme: 'fontawesome-stars',
showSelectedRating: true,
initialRating: currentRating,
onSelect: function (value, text) {
movieTitle = $('.movie-name'). text(),
tmdb_id = $(".imdb_id").val(),
_token = $(".csrf_field").val();
$.ajax({
headers: {
'X-CSRF-TOKEN': _token
},
method: "POST",
url: "/movies/" + tmdb_id + "/rate",
data: {
title: movieTitle,
tmdb_id: tmdb_id,
rating: value
},
success: function (result) {
$("#div1").html(result);
}
});
}
});
});
вы можете добавить скрипку с более простой версией коды? – SamGhatak
Нашли ошибку, спасибо в любом случае! –
cheers mate:) ... – SamGhatak