У меня есть этот код javascript, где он идет для каждого фильма в jsonp
dataType. Для каждого фильма я должен отображать его уменьшенное изображение и его название вместе со звездным рейтингом. Чтобы отобразить звездообразные символы ниже для каждого фильма, у меня есть этот код:
var include = '<div class="rateit" data-rateit-value="2.5" data-rateit-ispreset="true" data-rateit-readonly="true"></div>';
$(".prediction").html(include); //DISPLAYS THE PREDICTION RATING
Он просто устанавливает для html-содержимого prediction
класса это → <div class="rateit" data-rateit-value="2.5" data-rateit-ispreset="true" data-rateit-readonly="true"></div>
Я попытался использовать это непосредственно на моем html-коде, и он полностью работает, я вижу звезды. Вот он:
Но я пробовал это на javascript, и он не отображается. Я просто хочу иметь рейтинги ниже для каждого фильма.
Это мой код javascript:
var html = '';
var count = 0;
$.each(data.movies, function(index, movie) {
html += '<div class="item col-xs-6 col-md-3">';
html += '<div class="thumbnail" style="min-height:320px;max-height:320px;">';
//add link here
html += '<a href="viewMovieDetails.php?id=' + movie.id + '">'
html += '<img src="' + movie.posters.detailed + '" style="width:175px; height: 230px;" class="img-responsive" alt="" ></a>';
html += '<div class="caption">';
html += '<h5>' + movie.title + '</h5>';
html += '<div class="prediction"></div>';
html += '</div></div></div>';
//set a delay (1second) for a call on rotten tomatoes api and
//store data on db
if(count > 5){
setTimeout(function() { storeDataOnDB(movie.id);; }, 1000);
count = 0;
}
else{
count++;
}
});
// Append movies
$('#movie_recommend').html(html);
var include = '<div class="rateit" data-rateit-value="2.5" data-rateit-ispreset="true" data-rateit-readonly="true"></div>';
$(".prediction").html(include); //DISPLAYS THE PREDICTION RATING
Как вы думаете, что неправильно? Я что-то упускаю? или есть другой способ сделать это. Спасибо за помощь.
Вы должны уведомить плагин RateIt
, что новые данные доступны, просто добавьте это:
$(".rateit").rateit();
после $(".prediction").html(include);
event.returnValue is deprecated. Please use the standard event.preventDefault() instead.
, Я уверен, что это не причина.