# jQuery.filter()

Liste des paramètres acceptés :

- filter(expression)
- filter(fonction)

### filter(expression)

Supprime tous les élements du conteneur qui ne répondent pas à la recherche demandée.

Paramètres:

- expression (String): expression à rechercher

Cette methode renvoie: objet jQuery

#### Prenons l'exemple suivant:

Sélectionne tous les paragraphes et supprime ceux qui ne disposent pas de la classe "selected".

`$("p").filter(".selected")`

#### Testons sur le script suivant:

`<p class="selected">Hello</p><p>How are you?</p>`

#### On obtiendra :

`[ <p class="selected">Hello</p> ]`

#### Prenons l'exemple suivant:

Sélectionne tous les paragraphes et supprime ceux qui ne disposent pas de la classe "selected", et qui ne sont pas en première position

`$("p").filter(".selected, :first")`

#### Testons sur le script suivant:

`<p>Hello</p><p>Hello Again</p><p class="selected">And Again</p>`

#### On obtiendra :

`[ <p>Hello</p>, <p class="selected">And Again</p> ]`

### filter(fonction)

De même que la fonction filter(expression), hormis que c'est une fonction qui est passé en paramètre, dont le retour (true ou false) pour chaque élement de la sélection, determine, s'il sera supprimé ou non.

Paramètres:

- fonction (Function): fonction dont l'expression de retour sera utilisé pour filtrer le résutlat

Cette methode renvoie: objet jQuery

#### Prenons l'exemple suivant:

Sélectionne tous les paragraphes, puis supprime ceux qui ont un élement fils de type "ol".

`$("p").filter(function(index) { return $("ol", this).length == 0; })`

#### Testons sur le script suivant:

`<p><ol><li>Hello</li></ol></p><p>How are you?</p>`

#### On obtiendra :

`[ <p>How are you?</p> ]`