⊗jsPrPCPA 25 of 62 menu

การเพิ่มรายการซื้อใหม่ในเครื่องคำนวณผลิตภัณฑ์

ก่อนอื่นมาทำให้เมื่อ กดปุ่มในตารางแล้วจะเพิ่มแถวใหม่ พร้อมกับรายการซื้อ:

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 = 'ลบ'; td.classList.add('remove'); tr.appendChild(td); table.appendChild(tr); });

วิธีแก้ปัญหาที่ฉันนำเสนอมี ปัญหาชัดเจนเกี่ยวกับการซ้ำซ้อนของโค้ด: โดยแท้จริงแล้ว สำหรับแต่ละเซลล์เราเขียนโค้ดเดิมซ้ำ

ควรจะมีฟังก์ชันสำหรับ สร้างเซลล์ตาราง ฟังก์ชันนี้ ควรรับพารามิเตอร์แรกเป็นลิงก์ไปยังแถว ของตาราง พารามิเตอร์ที่สอง - เป็นข้อความของเซลล์ตาราง และพารามิเตอร์ที่สาม - เป็นชื่อคลาส CSS ของเซลล์:

function createCell(tr, value, name) { }

เมื่อมีฟังก์ชันดังกล่าว เราก็จะสามารถเขียนโค้ด ข้างต้นใหม่ได้ดังนี้:

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, 'ลบ', 'remove'); table.appendChild(tr); });

จงเขียนฟังก์ชัน createCell ตามที่ฉันอธิบาย

คัดลอกโค้ดของฉันสำหรับเพิ่มรายการซื้อใหม่ ทดลองเพิ่มรายการซื้อใหม่ในตาราง

ปรับเปลี่ยนฟังก์ชัน createCell เพื่อ ให้ส่งคืนเซลล์ตารางที่สร้างแล้ว ผ่าน return

ไทย
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικά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
เราใช้คุกกี้สำหรับการทำงานของเว็บไซต์ การวิเคราะห์ และการปรับเนื้อหาให้เหมาะสมส่วนบุคคล การประมวลผลข้อมูลเกิดขึ้นตาม นโยบายความเป็นส่วนตัว.
ยอมรับทั้งหมด ปรับแต่ง ปฏิเสธ