⊗jsPrPCPA 25 of 62 menu

Jauna pirkuma pievienošana produktu kalkulatorā

Sākumā darīsim tā, lai, nospiežot uz pogas, tabulā pievienotos jauna rinda ar pirkumu:

add.addEventListener('click', function() { let tr = document.createElement('tr'); let td; td = document.createElement('td'); td.textContent = name.value; td.classList.add('name'); tr.appendChild(td); td = document.createElement('td'); td.textContent = price.value; td.classList.add('price'); tr.appendChild(td); td = document.createElement('td'); td.textContent = amount.value; td.classList.add('amount'); tr.appendChild(td); td = document.createElement('td'); td.textContent = price.value * amount.value; td.classList.add('cost'); tr.appendChild(td); td = document.createElement('td'); td.textContent = 'dzēst'; td.classList.add('remove'); tr.appendChild(td); table.appendChild(tr); });

Manis dots risinājums tomēr ir ar acīmredzamām problēmām ar koda dublēšanu: faktiski katrai šūnai mēs rakstām vienu un to pašu kodu.

Būtu lietderīgi izveidot kādu funkciju tabulas šūnas izveidošanai. Ļaujiet šai funkcijai pirmo parametru pieņemt kā atsauci uz tabulas rindu, otro parametru - kā šūnas tekstu, un trešo - kā šūnas CSS klases nosaukumu:

function createCell(tr, value, name) { }

Ja mums būtu šāda funkcija, mēs varētu pārrakstīt iepriekš minēto kodu šādi:

add.addEventListener('click', function() { let tr = document.createElement('tr'); createCell(tr, name.value, 'name'); createCell(tr, price.value, 'price'); createCell(tr, amount.value, 'amount'); createCell(tr, price.value * amount.value, 'cost'); createCell(tr, 'dzēst', 'remove'); table.appendChild(tr); });

Realizējiet manis aprakstīto funkciju createCell.

Nokopējiet manu kodu jauna pirkuma pievienošanai. Testējiet jauna pirkuma pievienošanu tabulā.

Modificējiet funkciju createCell tā, lai tā atgrieztu caur return izveidoto tabulas šūnu.

Latviešu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mēs izmantojam sīkdatnes, lai nodrošinātu vietnes darbību, analīti un personalizāciju. Datu apstrāde notiek saskaņā ar Konfidencialitātes politiku.
pieņemt visus iestatīt noraidīt