Filter әдісі
filter әдісі жиында тек
белгілі бір селекторға сәйкес келетін
элементтерді ғана қалдырады.
Синтаксис
Селектор бойынша сүзгілеу:
.filter(селектор);
Параметр DOM элементтері немесе jQuery нысаны да болуы мүмкін:
.filter(DOM элемент немесе jQuery нысаны);
Элементтерді функция көмегімен де сүзгілеуге болады,
ол таңдалған әрбір элемент үшін жеке шақырылады.
Егер ол true мәнін қайтарса, ондағы элемент
соңғы нәтижеге енеді, ал егер false болса
- енбейді. Элементтердің өздері функцияда
this айнымалысында қолжетімді,
ал олардың жиындағы реттік нөмірлері
index айнымалысында:
.filter(function(index, elem))
Мысал
Барлық абзацтарды тауып, олардың басына
prepend
әдісімен '!' мәтінін қойайық,
содан соң табылғандардың ішінен
filter әдісімен тек www
класы бар абзацтарды алып, олардың соңына
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>