⊗jsPrPCPE 28 of 62 menu

Editace nákupů v kalkulačce produktů

Pojďme nyní implementovat editaci buněk. Podle podmínek lze editovat pouze první 3 buňky.

Zde jsou:

createCell(tr, name.value, 'name'); createCell(tr, price.value, 'price'); createCell(tr, amount.value, 'amount');

Je zřejmé, že kód pro editaci bude stejný pro každou buňku: po dvojitém kliknutí by se místo textu buňky mělo objevit vstupní pole a po stisknutí Enter ve vstupním poli by se jeho obsah měl stát novým textem buňky.

Navrhuji vytvořit určitou funkci, která bude přijímat jako parametr buňku tabulky a přidávat k ní možnost editace:

function allowEdit(td) { td.addEventListener('dblclick', function() { }); }

Pak můžeme naši funkci aplikovat následujícím způsobem:

allowEdit(createCell(tr, name.value, 'name')); allowEdit(createCell(tr, price.value, 'price')); allowEdit(createCell(tr, amount.value, 'amount'));

Pozorný čtenář si může všimnout, že ne všechny buňky jsou stejné: při změně buňky s cenou nebo buňky s množstvím by se měla měnit cena nákupu ve sloupci cost, a také by měl být přepočítán celkový součet.

Tento nuance necháme jako další dílčí úkol pro řešení v příští lekci. Pro začátek prostě uděláme možnost editace našich tří buněk, bez přepočtu.

Implementujte popsanou editaci buněk.

Čeština
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používáme soubory cookie pro fungování webu, analýzu a personalizaci. Zpracování údajů probíhá v souladu s Zásadami ochrany osobních údajů.
přijmout vše přizpůsobit odmítnout