Выдает NaN, хотя в тестовом коде все отлично работает. Код один в один
window.onload = function () {
let c = { 'Українська гривня': '1', 'Долар США':'37', 'Євро':'85.60', 'Польський злотий': '7'}; // Устанавливаем курс валют
let val = document.getElementById('input__convert'); // Получаем элемент ввода данных
let currency1 = document.getElementById('currencySelect1'); // Получаем первый селект
let currency2 = document.getElementById('currencySelect'); // Получаем второй селект
let result = document.getElementsByClassName('input__result')[0]; // Получаем поле куда будем писать результат
function summ() { // Делаем функцию
let z = 0;
if(currency1.value === currency2.value){ // Если оба значения в селектах равны
result.innerText = val.value; // То просто вписываем данные из поля ввода
} else {
if(currency1.value != 'Українська гривня'){ // Если не равны рублю, то
z = val.value*c[currency1.value]; // Переводим сумму в рубли
result.innerHTML = Math.ceil((z/c[currency2.value])*100)/100; // Делим на курс и округляем до сотых
} else { // Если не равны
result.innerHTML = Math.ceil((val.value*c[currency2.value])*100)/100; // Умножаем на курс и округляем до сотых
}
}
}
val.oninput = function () { // При вводе данных в поле вызываем функцию.
summ();
};
currency1.onchange = function () { // При смене первого селекта вызываем функцию.
summ();
};
currency2.onchange = function () { // При смене второго селекта вызываем функцию.
summ();
}
}
Вот html к нему
<div class="charity__currencies">
<a class="converter">Конвертатор</a>
<div class="custom-select" style="width:140px;">
<select id="currencySelect3">
<option value="0">У відділенях</option>
<option value="1">У відділенях</option>
<option value="2">Для карток</option>
</select>
</div>
<div class="custom-select" id="main__custom-select1" style="width:189px; ">
<div class="convert_block_item">
<input id="input__convert" type="number" placeholder="0" style="width: 9vw; height: 4.6vh; padding: 0px 2px 2px 10px; font-size: 23px; border-radius: 5px; border: 2px solid #c4c4c4; margin: -3vh 40vw 15vh -0.2vw;">
<select id="currencySelect1">
<option class="currency-button">Польський злотий</option>
<option class="currency-button" >Українська гривня</option>
<option class="currency-button">Долар США</option>
<option class="currency-button">Євро</option>
<option class="currency-button">Польський злотий</option>
</select>
</div>
</div>
<div class="convert_block_item">
<div class="input__result" style="width: 9vw; height: 4.6vh; padding: 0px 2px 2px 10px; font-size: 23px; margin-top: 5%; border-radius: 5px; border: 2px solid #c4c4c4; margin: -18.4vh 5vw 15vh 18.4vw; ">0</div>
<div class="custom-select" id="main__custom-select" style="width:189px; margin: -87.7px 10px 70px 220px;">
<select id="currencySelect">
<option class="currency-button">Українська гривня</option>
<option class="currency-button">Українська гривня</option>
<option class="currency-button">Долар США</option>
<option class="currency-button">Євро</option>
<option class="currency-button">Польський злотий</option>
</select>
</div>
</div>
</div>
</main>