<div class="Sum">
<div class="checkbox_item">
<label>Опция 1 <input type="checkbox" class="dopopt" value="500" checked/></label>
</div>
<div class="checkbox_item">
<label>Опция 2<input type="checkbox" class="dopopt" value="100200"/></label>
</div>
</div>
<span id="fullsum" class="rezult">100 500</span>
<script>
(() => {
const checkboxes = [].slice.call(
document.querySelectorAll('.Sum .checkbox_item input[type="checkbox"]')
);
const resultContainer = document.querySelector('#fullsum');
if (!resultContainer) {
return;
}
checkboxes.forEach(node => {
const initialValue = +resultContainer.textContent.replace(/\D+/gim, '');
node.addEventListener('change', () => {
const sum = checkboxes.reduce((res, node) => {
return res + (node.checked ? +node.value : 0);
}, initialValue);
resultContainer.textContent = sum.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ' ');
});
});
checkboxes.at(-1)?.dispatchEvent(new Event('change'));
})();
</script>