Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

bobington's avatar

Select All Checkboxes By name

Hello,

Using php i'm trying to generate a simple filter for my page to check everybox according to the date and could use some help.

my code below

html:

<?php foreach($query as $item){

echo"<input type='checkbox' name='".$item->Date."' onClick='toggle(this)'>"; 
echo "<th>".$item->Date_essai."</th>";              
}

?>

my script

function toggle(Case) {
      checkboxes = document.getElementsByName(???);
      for(var i=0, n=checkboxes.length;i<n;i++) {
        checkboxes[i].checked = Case.checked;
      }
    }
0 likes
3 replies
topvillas's avatar

Give the checkboxes a class and use that to select them.

Or, generate an array of names in PHP then put that as a global javascript variable then loop over that.

bobington's avatar

So I tried to follow your advice and find which one are checked using their class but it doesn't work.

 function toggle(Case) {
    var checkboxes = document.getElementsByClassName('Myclass');
    var list = 0;
    for (var i=0, n=checkboxes.length;i<n;i++) {
    if (checkboxes[i].checked) {
        list += ","+checkboxes[i].value;
    }
}

      checkboxes = document.getElementsByName(list);
      for(var i=0, n=checkboxes.length;i<n;i++) {
        checkboxes[i].checked = Case.checked;
      }
    }
bobington's avatar
bobington
OP
Best Answer
Level 1

My bad, I'm an idiot. I wrote value instead of name.

 function toggle(Case) {
    var checkboxes = document.getElementsByClassName('Myclass');
    var list = 0;
    for (var i=0, n=checkboxes.length;i<n;i++) {
    if (checkboxes[i].checked) {
        list += ","+checkboxes[i].name;
    }
}

      checkboxes = document.getElementsByName(list);
      for(var i=0, n=checkboxes.length;i<n;i++) {
        checkboxes[i].checked = Case.checked;
      }
    }

Please or to participate in this conversation.