मेथड filter
मेथड filter सेट में केवल
उन्हीं एलिमेंट्स को रखता है जो किसी
विशेष सेलेक्टर को संतुष्ट करते हैं।
सिंटैक्स
सेलेक्टर के आधार पर फ़िल्टरेशन:
.filter(सेलेक्टर);
पैरामीटर DOM एलिमेंट्स या jQuery ऑब्जेक्ट भी हो सकता है:
.filter(DOM एलिमेंट या jQuery ऑब्जेक्ट);
एलिमेंट्स को एक फ़ंक्शन की सहायता से भी फ़िल्टर किया जा सकता है,
जो चुने गए प्रत्येक एलिमेंट के लिए अलग से कॉल किया जाता है। यदि यह
true लौटाता है, तो वर्तमान एलिमेंट
अंतिम परिणाम में शामिल किया जाएगा, यदि false
- तो शामिल नहीं किया जाएगा। एलिमेंट्स स्वयं फ़ंक्शन में,
वेरिएबल 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>