Metod filter
Metod filter to'plamda faqatgina
ma'lum bir selektorga mos keladigan
elementlarni qoldiradi.
Sintaksis
Selektor bo'yicha filtrlash:
.filter(selektor);
Parametr shuningdek DOM elementlari yoki jQuery ob'ekti ham bo'lishi mumkin:
.filter(DOM element yoki jQuery ob'ekti);
Elementlarni funksiya yordamida ham
filtrlash mumkin, u har bir tanlangan
element uchun alohida chaqiriladi. Agar u
true qaytarsa, joriy element
yakuniy natijaga kiritiladi, agar false
bo'lsa - kiritilmaydi. Elementlarning o'zi funksiyada,
this o'zgaruvchisida mavjud,
ularning to'plamdagi tartib raqamlari
esa index o'zgaruvchisida:
.filter(function(index, elem))
Misol
Keling, barcha abzatslarni topaylik, ularning
boshiga '!' matnini
prepend
yordamida qo'shaylik,
keyin topilganlar orasidan faqatgina
www klassiga ega bo'lgan abzatslarni
filter yordamida ajratib olaylik
va ularning oxiriga '?' matnini
append
yordamida qo'shaylik:
<p>matn</p>
<p>matn</p>
<p class="www">matn</p>
<p class="www">matn</p>
$('p').prepend('!').filter('.www').append('?');
HTML kodi shunday ko'rinishga keladi:
<p>!matn</p>
<p>!matn</p>
<p class="www">!matn?</p>
<p class="www">!matn?</p>
Misol
Keling, funksiya yordamida
strong
tegiga ega bo'lgan barcha
abzatslarni topaylik
va ularga '!!!' matnini qo'shaylik:
<p><strong>matn</strong></p>
<p><strong>matn</strong></p>
<p>matn</p>
<p>matn</p>
$('p').filter(function() {
return $('strong', this).length === 1;
}).html('!!!');
HTML kodi shunday ko'rinishga keladi:
<p>!!!</p>
<p>!!!</p>
<p>matn</p>
<p>matn</p>