Как правильно установить содержимое HTML с помощью Jquery?

0

У меня есть этот код 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-коде, и он полностью работает, я вижу звезды. Вот он: Изображение 174551
Но я пробовал это на 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

Как вы думаете, что неправильно? Я что-то упускаю? или есть другой способ сделать это. Спасибо за помощь.

  • 0
    Вы пытались открыть консоль? Есть ли ошибки?
  • 0
    @nikis, нет никаких ошибок, только предупреждение. event.returnValue is deprecated. Please use the standard event.preventDefault() instead. , Я уверен, что это не причина.
Показать ещё 7 комментариев
Теги:

1 ответ

1
Лучший ответ

Вы должны уведомить плагин RateIt, что новые данные доступны, просто добавьте это:

$(".rateit").rateit();

после $(".prediction").html(include);

  • 0
    Вау! Это сработало. Спасибо за помощь.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню