У меня есть функция внизу, чтобы отображать каждую программу, собранную в предыдущей функции.
Он отлично работает, я хочу усовершенствовать его, чтобы при нажатии кнопки каждый(). только для тех программ, которые имеют определенную категорию, например "Jeu",
Любые идеи о том, как я могу усовершенствовать это каждый()?
function displayChannels()
{
$.each(channel_list, function(index, channel) {
//Make the code for the channel
var code_channel = "<li>"
+"<img src='"+channel._icon+"' alt='"+channel._name+"' title='"+channel._name+"'/>"
+"<p>"+channel._name+"</p>"
+"</li>";
//Display it
$("#channel-list").append(code_channel);
//Open a list for the channel program list
var code_prog_list = "<ul class='channel_row'>";
//Add each program in it as a li each time
// DO I NEED TO PUT A FILTER HERE FOR PROGRAMS WHICH MATCH THE CATEGORY 'JEU'
$.each(channel._programs, function( index, programme ) {
code_prog_list+="<div class='program'>"
+"<div class='program_bg'><img src='"+programme._img+"' alt=' '/></div>"
+"<div class='programInner'>"
+"<div class='channelIcon'><img src='logos/logo"+programme._icon+".png'/></div>"
+"<div class='textContainer'><h4>"+programme._title+"</h4>"
+"<strong><p>"+programme._hour+":"+programme._minutes+"</strong> | "+programme._cat+" ("+programme._duree+"mn)"+"</p></div>" // end of text container
+"</div>"// end of programInner
+"<div class='desc'>"+programme._desc+"</div>"
+"</div>"; // end of div program
});
//Display it
$("#main").append(code_prog_list);
});
}
Вы можете проверить, является ли категория "JEU" внутри функции и возвращает true:
if(programme._cat !== 'JEU') {
return true;
}
Согласно документации для jQuery.each,
Мы можем разбить цикл $.each() на конкретной итерации, заставив функцию обратного вызова вернуть false. Возврат не-false - это то же самое, что и оператор continue в цикле for; он немедленно перейдет к следующей итерации.
Таким образом, в основном, возвращая true в анонимной функции внутри .each
вы пропускаете программы, которые не имеют "JEU" в качестве категории.
if
?if (channel._category == 'JEU') { ... }
?