To avoid having to attach onclick handlers to all 24 checkboxes, I suggest attaching the onclick once to the parent div and inside the handler, you can detect which checkbox is checked.

And if you want to support older IE browsers, use getElementsByTagName('input') instead of querySelectorAll. That should work as long as you only have input type=checkbox inside the wrapper and no other input tags.

Code:
(function () {
    'use strict';

    var wrapper = document.getElementById('wrapper'),
         allCheckboxes = wrapper.getElementsByTagName('input');

    ...
    ...

    wrapper.onclick = function(e) {
        e = e || window.event;
        var el = e.target || e.srcElement;
        if (el.tagName.toLowerCase() === 'input') { //a checkbox is clicked
             handleOnChange.call(this, e);
        }
    }

})();
Not tested but you get the idea.