Editace s přepočtem v kalkulačce produktů v JavaScriptu
Nyní upravme funkci allowEdit
tak, aby byl proveden přepočet popsaný v předchozí
lekci.
V tomto okamžiku by váš kód funkce měl vypadat přibližně takto:
function allowEdit(td) {
td.addEventListener('dblclick', function() {
let text = td.textContent
td.textContent = '';
let input = document.createElement('input');
input.value = text;
input.focus();
td.appendChild(input);
input.addEventListener('keydown', function(event) {
if (event.key == 'Enter') {
td.textContent = this.value;
}
});
});
}
Přidejme kód, který pro buňku s cenou a pro buňku s množstvím provede přepočet:
function allowEdit(td) {
td.addEventListener('dblclick', function() {
let text = td.textContent
td.textContent = '';
let input = document.createElement('input');
input.value = text;
input.focus();
td.appendChild(input);
input.addEventListener('keydown', function(event) {
if (event.key == 'Enter') {
td.textContent = this.value;
if (td.classList.contains('price') || td.classList.contains('amount')) {
// provedeme přepočet
}
}
});
});
}
Doplňte chybějící část kódu tak, aby
při změně buňky s cenou nebo buňky s
množstvím se změnila cena nákupu
ve sloupci cost a také byl proveden
přepočet celkové částky.