JQuery ile öğeleri sayma


112

Sayfada belirli bir sınıfa sahip kaç öğeyi saymanın bir yolu var mı?

Yanıtlar:


229
$('.someclass').length

Ayrıca şunları da kullanabilirsiniz:

$('.someclass').size()

işlevsel olarak eşdeğerdir, ancak eski tercih edilir . Aslında, ikincisi artık kullanımdan kaldırılmıştır ve herhangi bir yeni geliştirmede kullanılmamalıdır.


Yerini bulamıyorum , ama son zamanlarda Meta'da okudum "Nasıl oy kullanıyorsunuz?" ve Jeff Atwood'dan bir alıntı vardı "Ne zaman bir sorun için araştırma yapsam ve Yanıtı bulsam ." Benim durumum.
— brasofilo

13
Bu .size()yöntemin Kullanımdan Kaldırıldığına dikkat edin .
— Moshe Simantov

1
3.1.1 sürümüyle, uzunluk tanımsız olarak döndürülür
— Giovanni Bitliner

1
@TylerLazenby: Bundan emin misin? jsfiddle.net/xpvt214o/154885 İddianızı gösterecek bir örneğiniz var mı?
— David

1
@TylerLazenby: Sorunuzdaki kod jQuery kullanmıyor. Sadece bir dizgenin uzunluğunu alıyorsunuz.
— David


8

Evet var.

$('.MyClass').size()

1
$ ('. MyClass']. Uzunluk, bir yöntem çağrısı ek yükü olmadığından biraz daha iyidir. Aksi takdirde ikisi tamamen aynıdır.
— EvilAmarant7x



4
$('.class').length

Bu benim için çalışmıyor. Bunu kullanmayı tercih ederim:

$('.class').children().length

Nedenini gerçekten bilmiyorum ama ikincisi sadece benim için çalışıyor. Her iki boyut da bir şekilde çalışmıyor.


3

En iyi yol, .each () kullanmaktır.

var num = 0;

$('.className').each(function(){
    num++;
});

2
".Each () yöntemi, DOM döngü yapılarını kısa ve hataya daha az eğilimli hale getirmek için tasarlanmıştır"
— Panomosh

2

kullanmak .size()yöntem veya .lengthnitelik

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.