c4udok,
не осилил ваше описание, но может чем поможет такой вариант ...
заменить полностью на
document.addEventListener("DOMContentLoaded", function() {
let db = [{
ISO4217: '$',
multiply: 1
},
{
ISO4217: 'RUB',
multiply: 70.5
},
{
ISO4217: 'UAH',
multiply: 27
}
];
document.getElementById("valuta").addEventListener('change', function(e) {
let option = db[this.selectedIndex];
rebuildPrices(option);
});
function rebuildPrices({ISO4217, multiply}) {
[...document.querySelectorAll('[data-cost]')].forEach(el => {
const num = el.dataset.cost,
span = el.querySelector('span');
span.innerHTML = `${(num * multiply).toFixed(2)} ${ISO4217}`
})
}
rebuildPrices(db[0])
});