Question #6180   Proposée par Answiki le 22/05/2022 à 17:51:03 UTC

Comment filtrer les checkbox en JavaScript ?

Answer   Submitted by Answiki on 05/22/2022 at 05:55:43 PM UTC

Il existe plusieurs façon de filtrer des cases à cocher en JavaScript, mais l'idée générale est toujours la même :

  • créer une liste d'éléments en HTML avec un attribut qui permet de les différencier. (typiquement une classe) ;
  • créer une case à cocher qui va permettre de déclencher un événement lorsque son état change ;
  • quand l'événement se déclenche, on affiche l'élément approprié au status de la case à cocher

Voici un exemple (tester le code complet sur jsfiddle):


Créer les élements à filtrer :

<ul>
  <li class=".io"><a href="https://alphons.io">alphons.io</a></li>
  <li class=".com"><a href="https://google.com">google.com</a></li>
</ul>

Créer les cases à cocher:

<div><input type="checkbox" id=".com" checked>  <label for=".com">.com</label></div>
<div><input type="checkbox" id=".io"  checked>  <label for=".io">.io</label></div>

L'écouteur d'événement:

// Event for the checkboxes
document.getElementById('.com').onchange = function() { hideShow ('.com', this.checked); }
document.getElementById('.io').onchange = function() { hideShow ('.io', this.checked); }
document.getElementById('.org').onchange = function() { hideShow ('.org', this.checked); }



Le code ci dessus fait appel à une fonction hideShow() dont le code peut être :

// Show or hide the element with class
// Show if visible = true, otherwise hide the element
function hideShow(myClass, visible) {	
  [].forEach.call(document.getElementsByClassName(myClass), function (el) { el.hidden = !visible;	});  
}


4 events in history
Question by Answiki 05/22/2022 at 05:57:52 PM
Comment filtrer une liste d'élément avec des cases à cocher en JavaScript ?
Question by Answiki 05/22/2022 at 05:56:18 PM
Comment filtrer des élément selon l'état d'une case à cocher ?
Answer by Answiki on 05/22/2022 at 05:55:43 PM

Il existe plusieurs façon de filtrer des cases à cocher en JavaScript, mais l'idée générale est toujours la même :

  • créer une liste d'éléments en HTML avec un attribut qui permet de les différencier. (typiquement une classe) ;
  • créer une case à cocher qui va permettre de déclencher un événement lorsque son état change ;
  • quand l'événement se déclenche, on affiche l'élément approprié au status de la case à cocher

Voici un exemple (tester le code complet sur jsfiddle):


Créer les élements à filtrer :

<ul>
  <li class=".io"><a href="https://alphons.io">alphons.io</a></li>
  <li class=".com"><a href="https://google.com">google.com</a></li>
</ul>

Créer les cases à cocher:

<div><input type="checkbox" id=".com" checked>  <label for=".com">.com</label></div>
<div><input type="checkbox" id=".io"  checked>  <label for=".io">.io</label></div>

L'écouteur d'événement:

// Event for the checkboxes
document.getElementById('.com').onchange = function() { hideShow ('.com', this.checked); }
document.getElementById('.io').onchange = function() { hideShow ('.io', this.checked); }
document.getElementById('.org').onchange = function() { hideShow ('.org', this.checked); }



Le code ci dessus fait appel à une fonction hideShow() dont le code peut être :

// Show or hide the element with class
// Show if visible = true, otherwise hide the element
function hideShow(myClass, visible) {	
  [].forEach.call(document.getElementsByClassName(myClass), function (el) { el.hidden = !visible;	});  
}


Question by Answiki 05/22/2022 at 05:51:03 PM
Comment filtrer les checkbox en JavaScript ?
# ID Query URL Count

Icons proudly provided by Friconix.