filter մեթոդը
filter մեթոդը հավաքածուի մեջ թողնում է միայն
նրանք տարրերը, որոնք բավարարում են
որոշակի ընտրիչին:
Շարահյուսություն
Ֆիլտրում ըստ ընտրիչի:
.filter(ընտրիչ);
Պարամետրը կարող է լինել նաև DOM տարրեր կամ jQuery օբյեկտ:
.filter(DOM տարր կամ jQuery օբյեկտ);
Կարելի է նաև ֆիլտրել տարրերը օգտագործելով
ֆունկցիա, որն կանչվում է առանձին
յուրաքանչյուր ընտրված տարրի համար: Եթե այն
վերադարձնում է true, ապա ընթացիկ տարրը կ
ներառվի վերջնական արդյունքում, եթե false
- չի ներառվի: Tարրերն իրենք հասանելի են ֆունկցիայում,
this փոփոխականում,
իսկ նրանց հերթական համարները
հավաքածուում — index փոփոխականում:
.filter(function(index, elem))
Օրինակ
Եկեք գտնենք բոլոր պարբերությունները, դնենք նրանց
սկզբում '!' տեքստը օգտագործելով
prepend,
ապա ստացվածներից ստանանք միայն պարբերությունները
www դասի օգտագործելով filter
և դնենք նրանց վերջում '?' տեքստը օգտագործելով
append:
<p>տեքստ</p>
<p>տեքստ</p>
<p class="www">տեքստ</p>
<p class="www">տեքստ</p>
$('p').prepend('!').filter('.www').append('?');
HTML կոդը կդառնա այսպիսին:
<p>!տեքստ</p>
<p>!տեքստ</p>
<p class="www">!տեքստ?</p>
<p class="www">!տեքստ?</p>
Օրինակ
Եկեք օգտագործելով ֆունկցիա գտնենք բոլոր
պարբերությունները, որոնք ունեն strong
պիտակ և դնենք նրանց '!!!' տեքստը:
<p><strong>տեքստ</strong></p>
<p><strong>տեքստ</strong></p>
<p>տեքստ</p>
<p>տեքստ</p>
$('p').filter(function() {
return $('strong', this).length === 1;
}).html('!!!');
HTML կոդը կդառնա այսպիսին:
<p>!!!</p>
<p>!!!</p>
<p>տեքստ</p>
<p>տեքստ</p>