I've found several examples of placing another control inside a clickable button, but always with result that it's handlers are taken over by the parent button:
var button = document.getElementById('button');
button.onclick = evt => {
alert('Button clicked')
};
var checkbox = document.getElementById('checkbox');
checkbox.onclick = evt => {
alert('Checkbox clicked')
};
checkbox.onchange = evt => {
alert('Checkbox changed')
};
<button id="button" style="width: 150px;">
ClickMe
<input type="checkbox" id="checkbox" style="float: right;" />
</button>
I'm curious if the checkbox could somehow efface the surrounding button in the click event processing sequence, in another word if clicking directly on the checkbox would change it's state and stopped propagating the click, while clicking on the button anywhere except the checkbox would send click event to the button (I suppose if the button wasn't an active element it would be so)