Собрать все одинаковые классы в массив в jQuery
Здравствуйте! Прошу помощи в данном вопросе:
Есть примерно такой код: <label for="2" class="price"><span>3200</span> р <input type="checkbox" id="2"> </label> <label for="2" class="price"><span>3000</span> р <input type="checkbox" id="2"> </label> <label for="2" class="price"><span>4600</span> р <input type="checkbox" id="2"> </label> И таких checkbox-ов есть много. Сам скрипт имеет формулу в которую надо добавить сумму всех выше описанных элементов в <span>. Но только тех возле которых есть поставленный чекбокс. Можно конечно вручную прописать каждому class="price" уникальный id и таким способом подставить в формулу не используя массив. Но сложность в том что количество чекбоксов может меняться. Если что не ясно обяснил укажите и попробую расписать по другому. Спасибо! |
Проблему можно решить максимально топорно.
1) найди все выделенные чекбоксы 2) перебирая из один за другим извлекай значение из span и прибавляй к результату Как то так. var result=0; $('.container input[type=checkbox]:checked') .each(function(){ result+= $(this).parent().find('span').text(); }) alert (result); .container мне нужен чтобы указать внутри какого элемента собраны все чекбоксы. Вместо контейнера можно просто каждому чекбоксу класс присвоить к примеру. Короче в выборку попасть должны только те чекбоксы которые нам интересны а не все что есть на странице. |
Спасибо! Уже получилось.
|
Цитата:
var result=0; $('.price input[type=checkbox]:checked').prev('span').each(function() { result+= parseInt($(this).text()); }); alert(result); |
Часовой пояс GMT +3, время: 10:07. |