jQuery для переменной парсинга цикла в eq ()

0

У меня проблема с JQuery в тот момент, когда я пытаюсь разобрать целочисленную переменную в цикле for в функции eq(). Проблема, с которой я столкнулась, - это когда я пытаюсь добавить класс ".episode-l" (должен быть классом, поскольку их несколько и отображаются с помощью getjson) в определенном месте с помощью функции eq(), но это не будет отображение с переменной, мне она нужна как переменная, так как мне нужно увеличивать ее каждый цикл. Есть и другие подобные сообщения, но я посмотрел на них, и никто из них не работает. Вот код:

for( var i = 0; i < filmnamevar.length; i++)
{           
    $.getJSON('http://api.themoviedb.org/3/search/movie?query='+ filmnamevar[i] +'&api_key=81c50c197b83129dd4fc387ca6c8c323',function(dataa){

        $('.episode-l').eq(i).append('<div class="rating">'+ dataa.results['0'].vote_average +'</div>');
        console.log(i);
    });
} 
Показать ещё 1 комментарий
Теги:
class
for-loop

1 ответ

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

Это общая проблема, связанная с использованием замыкания в цикле.

Предполагая, что filimnamevar является массивом, поскольку вы используете jQuery, вы можете использовать $.each() (вместо использования функции IIFE, как указано в приведенных ниже ссылках, но принцип, лежащий в основе проблемы, тот же)

$.each(filmnamevar, function (i, val) {
    $.getJSON('http://api.themoviedb.org/3/search/movie?query=' + val + '&api_key=81c50c197b83129dd4fc387ca6c8c323', function (dataa) {

        $('.episode-l').eq(i).append('<div class="rating">' + dataa.results['0'].vote_average + '</div>');
        console.log(i);
    });
})

Читать

  • 0
    Я бы запутался в этом навсегда, так что большое спасибо.

Ещё вопросы

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