#jquery
#jquery
Вопрос:
Я пытаюсь получить li.length для каждого ul на сайте. Теперь я получаю общее количество всех li.(8)
Я хочу, чтобы это было так: ul#1 : 4
ul#2 : 2
ul#3 : 2
$( "li.first:contains('Brazil')" ).addClass( "correct" );
$( "li.second:contains('Croatia')" ).addClass( "correct" );
$( "li.third:contains('Mexico')" ).addClass( "correct" );
$( "li.fourth:contains('Cameroon')" ).addClass( "correct" );
var n = $("li.correct").length;
$( "#groupa" ).append( "<p>You got: " n " points.</p>");
Смотрите Скрипку здесь
Комментарии:
1. var n = $(«.правильно»). длина;
2. не понял, что именно вы хотите?
Ответ №1:
Вы можете выполнить итерацию по каждому ul, а затем найти в них длину li, используя:
$('ul').each(function(){
alert($('li',this).length);
//or
alert('ul#' $(this).index() ':' $('li',this).length);
});
Комментарии:
1. Спасибо! Это было именно то, чего я хотел.
Ответ №2:
Подсчитайте количество «правильных» классов:
var n = $(«.правильно»).длина;
Комментарии:
1. чем отличается от OP: var n = $(«li.correct»). длина;
2. поскольку он ищет li.first .correct , li.second .correct, li.third .correct li.fourth .correct , нет $(‘li.correct’), т. Е. Он ссылается на него неправильно и никогда не получит счет, потому что эти объекты не существуют. Просто проверяя .correct , он получает все, к чему он добавил класс «correct»
3. Однако вопрос OP является неполным и не содержит разметки HTML, поэтому я могу понять, почему этот ответ может быть неправильным приложением к их потребностям или что я понял его по-другому