Mon objectif est que si toutes les cases sont cochées, la personne peut aller plus loin sinon elle ira sur une page d'excuse.

J'ai trouvé cela dans jQuery.

$("input[type='checkbox'].itemCheck").change(function(){
    var a = $("input[type='checkbox'].itemCheck");
    if(a.length == a.filter(":checked").length){
        console.log("Je vais sur la formulaire");

    }
});

je l'ai essayé et ça marche mais j'en ai besoin dans vanilla js donc j'ai essayé de le convertir mais je n'arrive pas à trouver comment. J'ai essayé une autre logique pour le faire fonctionner mais je ne sais pas comment.

<input type="checkbox" name="verif" class="checkbox itemCheck">

<input type="checkbox"  name="age" class="checkbox itemCheck">

<input type="checkbox"  name="employed" class="checkbox itemCheck">
0
elliot.g 6 nov. 2019 à 23:17

1 réponse

La version JavaScript vanille de ce code jQuery serait: (Ajout de commentaires pour que vous puissiez comprendre ce qui se passe)

// gets all the inputs on the page with type = "checkbox"
var checkboxes = document.querySelectorAll('input[type="checkbox"]');
// loops through each checkbox
for (var i = 0; i < checkboxes.length; i++) {
  // add an change event listener to each checkbox
  checkboxes[i].addEventListener('change', function() {
    // gets the checkboxes that are ticked (or "checked")
    var checkboxes_ticked = document.querySelectorAll('input[type="checkbox"]:checked');
    // check if the length of ticked checkboxes matches with the total checkboxes on the page
    if (checkboxes_ticked.length === checkboxes.length) {
      // all checkboxes where ticked! display your message
      console.log("Je vais sur la formulaire");
    }
  });
}

Bonne chance.

0
JM-AGMS 6 nov. 2019 à 21:40