In JavaScript possiamo rendere gli elementi checkbox e radio read-only.
Questo tipo di elementi non supporta l'attributo HTML5 readonly. La soluzione consiste nell'impostare sempre l'attributo checked.
const checkbox = document.querySelector('#readonly');
checkbox.addEventListener('change', () => {
checkbox.setAttribute('checked','checked');
}, false);