Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

check how many checkboxes are checked with classname?

Tags:

javascript

I have found this accepted answer but somehow it doesn't work for me:

var checkedValue = null; 
var inputElements = document.getElementsByClassName('messageCheckbox');
for(var i=0; inputElements[i]; ++i){
      if(inputElements[i].checked){
           checkedValue = inputElements[i].value;
           break;
      }
}

when I tried to log inputElements[0] it logs:

<input type="checkbox" id="checkbox-2" class="todo-checkbox" onclick="handleCheck('text-2', 'checkbox-2')">

I only want to use pure js, no jquery, help?

like image 412
gpbaculio Avatar asked Oct 26 '25 06:10

gpbaculio


1 Answers

To get the count of all checked checkbox you can use filter() like the following way:

var inputElements = [].slice.call(document.querySelectorAll('.messageCheckbox'));
var checkedValue = inputElements.filter(chk => chk.checked).length;

console.log(checkedValue);
<input type="checkbox" class="messageCheckbox" checked>
<input type="checkbox" class="messageCheckbox">
<input type="checkbox" class="messageCheckbox" checked>
like image 52
Mamun Avatar answered Oct 29 '25 07:10

Mamun