Metode filter
Metode filter hanya menyisakan dalam kumpulan
elemen-elemen yang memenuhi
selektor tertentu.
Sintaks
Penyaringan berdasarkan selektor:
.filter(selektor);
Parameter juga dapat berupa elemen DOM atau objek jQuery:
.filter(elemen DOM atau objek jQuery);
Anda juga dapat menyaring elemen dengan menggunakan
fungsi, yang dipanggil secara terpisah untuk
setiap elemen yang dipilih. Jika fungsi
mengembalikan true, maka elemen saat ini akan
dimasukkan ke dalam hasil akhir, jika false
- tidak dimasukkan. Elemen itu sendiri dapat diakses dalam fungsi,
dalam variabel this, dan nomor urutnya
dalam kumpulan — dalam variabel index:
.filter(function(index, elem))
Contoh
Mari kita temukan semua paragraf, beri mereka
teks '!' di awal dengan
prepend,
kemudian dari yang ditemukan, ambil hanya paragraf
dengan kelas www menggunakan filter
dan beri mereka teks '?' di akhir dengan
append:
<p>teks</p>
<p>teks</p>
<p class="www">teks</p>
<p class="www">teks</p>
$('p').prepend('!').filter('.www').append('?');
Kode HTML akan menjadi seperti ini:
<p>!teks</p>
<p>!teks</p>
<p class="www">!teks?</p>
<p class="www">!teks?</p>
Contoh
Mari kita menggunakan fungsi untuk menemukan semua
paragraf yang memiliki tag
strong
dan beri mereka teks '!!!':
<p><strong>teks</strong></p>
<p><strong>teks</strong></p>
<p>teks</p>
<p>teks</p>
$('p').filter(function() {
return $('strong', this).length === 1;
}).html('!!!');
Kode HTML akan menjadi seperti ini:
<p>!!!</p>
<p>!!!</p>
<p>teks</p>
<p>teks</p>