Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 23.09.2013, 20:30
Новичок на форуме
Отправить личное сообщение для lev-otinov Посмотреть профиль Найти все сообщения от lev-otinov
 
Регистрация: 20.09.2012
Сообщений: 5

Собрать все одинаковые классы в массив в 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 и таким способом подставить в формулу не используя массив. Но сложность в том что количество чекбоксов может меняться.
Если что не ясно обяснил укажите и попробую расписать по другому. Спасибо!
Ответить с цитированием
  #2 (permalink)  
Старый 24.09.2013, 17:46
Профессор
Отправить личное сообщение для DjDiablo Посмотреть профиль Найти все сообщения от DjDiablo
 
Регистрация: 04.02.2011
Сообщений: 1,815

Проблему можно решить максимально топорно.

1) найди все выделенные чекбоксы
2) перебирая из один за другим извлекай значение из span и прибавляй к результату

Как то так.

var result=0;
$('.container input[type=checkbox]:checked') .each(function(){
   result+= $(this).parent().find('span').text();
})
alert (result);


.container мне нужен чтобы указать внутри какого элемента собраны все чекбоксы. Вместо контейнера можно просто каждому чекбоксу класс присвоить к примеру. Короче в выборку попасть должны только те чекбоксы которые нам интересны а не все что есть на странице.
__________________
Лучше калымить в гандурасе чем гандурасить на колыме

Последний раз редактировалось DjDiablo, 24.09.2013 в 17:55.
Ответить с цитированием
  #3 (permalink)  
Старый 24.09.2013, 17:57
Новичок на форуме
Отправить личное сообщение для lev-otinov Посмотреть профиль Найти все сообщения от lev-otinov
 
Регистрация: 20.09.2012
Сообщений: 5

Спасибо! Уже получилось.
Ответить с цитированием
  #4 (permalink)  
Старый 25.09.2013, 15:55
Кандидат Javascript-наук
Отправить личное сообщение для nyols Посмотреть профиль Найти все сообщения от nyols
 
Регистрация: 16.02.2011
Сообщений: 134

Сообщение от DjDiablo
.container мне нужен чтобы указать внутри какого элемента собраны все чекбоксы
Так ведь у них есть родитель label с классом .price

var result=0;
$('.price input[type=checkbox]:checked').prev('span').each(function() {
   result+= parseInt($(this).text());
});
      
alert(result);
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
jQuery accordion все закладки закрыты BoB jQuery 9 22.03.2013 15:27
Правда ли то, что с помощью JQuery можно сделать все, что связано с JavaScript? Bandicoot Оффтопик 3 10.03.2011 15:09
Название ячейки таблицы Questioner Общие вопросы Javascript 6 16.02.2011 09:58
OneShowHide.js jQuery раскрываются сразу все списки вместо одного Yatsenco Элементы интерфейса 3 10.09.2010 15:13
глюк форума Gvozd Сайт Javascript.ru 11 18.03.2009 14:37