window.price_sum_field_calculator = (count_fields_sel='.count.field', sum_field_sel='#sum_field') -> fields = document.querySelectorAll count_fields_sel sum_field = document.querySelector sum_field_sel change_f = (e) -> sum = 0 for el in fields price = el.getAttribute 'data-price' sf = el.getAttribute 'for' s = 1 * el.value * price sfe = document.querySelector "##{sf}" sfe.textContent = (if 0==s then '' else s) if sfe sum += s sum_field.textContent = sum for el in fields el.addEventListener 'change', change_f el.addEventListener 'input', change_f change_f()