2013-02-10 2 views
0

Должно быть, просто, но меня нет.Получить количество элементов на основе значения атрибута данных

Я хочу получить количество элементов с заданным значением атрибута данных.

У меня есть некоторые элементы html с различными значениями данных = 'values'. Необходимо получить количество элементов с каждым значением.

Если вы посмотрите на код ниже, я хочу, чтобы получить количество размеров «р» и «L» размеры

$('.overview li img').each(function() { 

var s = $(this).data('size'); 

switch (s) { 
    case 'p': 
     r = 0.66667 
     break; 
    case 'l': 
     r = 1.5 
     break; 
} 

var imgW = $(this).css({ 
    width: h * r + 'px' 
}); 

})

любая помощь очень ценится

приветствий Дэйва

ответ

2

Вы можете просто создать селектор, который выглядит для данных размера = «р» или дата-размер = «л»

var pCount = $(".overview li img[data-size='p']").length 
var lCount = $(".overview li img[data-size='l']").length 

Кроме того, вы можете использовать селектор, чтобы исключить оператор switch, чтобы просто перебрать элементы с размером данных = 'p' или data-size = 'l'.

+0

вот что я после ... приветствий сэр – magicspon

2

Используйте некоторые счетчики:

var pCount = 0 
    ,lCount = 0; 

$('.overview li img').each(function() { 
    //----------- 
    case 'p': 
     r = 0.66667; 
     pCount++;  //counter of 'p' 
     break; 
    case 'l': 
     r = 1.5; 
     lCount++;  //counter of 'l' 
     break; 
    //---- 

}); 

console.log(pCount, lCount); 
Смежные вопросы