⊗jsPmFmRd 402 of 505 menu

การทำงานกับปุ่มเรดิโอใน JavaScript

ตอนนี้ลองมาทำงานกับ ปุ่มเรดิโอ กันบ้าง พวกมันเป็นกลุ่มของสวิตช์ ซึ่งสามารถเลือกได้เพียงอันเดียวเท่านั้น เพื่อให้ปุ่มเรดิโอหลายปุ่มเป็นกลุ่มเดียวกัน พวกมันต้องมีค่าแอตทริบิวต์ name ที่เหมือนกัน:

<input type="radio" name="elem"> <input type="radio" name="elem"> <input type="radio" name="elem">

และเพื่อให้ JavaScript สามารถแยกแยะได้ว่าปุ่มไหน ถูกเลือก แต่ละปุ่มเรดิโอใน กลุ่มจะถูกเพิ่มแอตทริบิวต์ value ด้วยค่า ที่แตกต่างกัน:

<input type="radio" name="elem" value="1"> <input type="radio" name="elem" value="2"> <input type="radio" name="elem" value="3">

เพื่อให้ปุ่มเรดิโอปุ่มใดปุ่มหนึ่งถูกเลือก โดยค่าเริ่มต้น จำเป็นต้องกำหนดแอตทริบิวต์ checked ให้กับมัน:

<input type="radio" name="elem" value="1" checked> <input type="radio" name="elem" value="2"> <input type="radio" name="elem" value="3">

ลองมาดูในทางปฏิบัติว่าทำงาน กับปุ่มเหล่านี้ใน JavaScript อย่างไร ให้ เรามีกลุ่มปุ่มเรดิโอที่แสดงด้านบน และปุ่มธรรมดาอีกปุ่มหนึ่ง:

<input type="submit" id="button">

ลองทำให้เมื่อคลิกที่ ปุ่มนั้น ค่าของ value จากปุ่มเรดิโอที่ถูกเลือกอยู่ในขณะนั้น จะแสดงขึ้นบนหน้าจอ

สำหรับการแก้โจทย์จำเป็นต้องวนลูปผ่าน ปุ่มเรดิโอทั้งหมดของเราและตรวจสอบว่าปุ่มไหน ถูกเลือก ในการนี้จำเป็นต้องอ่าน ค่าของคุณสมบัติ checked ของแต่ละ ปุ่มเรดิโอที่วนลูป ปุ่มใดที่มีคุณสมบัตินี้ เท่ากับ true - ปุ่มเรดิโอนั้นก็คือปุ่มที่ถูกเลือก

มาทำตามที่อธิบายกัน:

let radios = document.querySelectorAll('input[type="radio"]'); let button = document.querySelector('#button'); button.addEventListener('click', function() { for (let radio of radios) { if (radio.checked) { console.log(radio.value); } } });

มีปุ่มเรดิโอ 3 ปุ่ม พารากราฟหนึ่งอัน และปุ่มหนึ่งปุ่ม เมื่อคลิกที่ปุ่ม ให้แสดงค่า value ของปุ่มเรดิโอที่ถูกเลือกในพารากราฟ

ไทย
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
เราใช้คุกกี้สำหรับการทำงานของเว็บไซต์ การวิเคราะห์ และการปรับเนื้อหาให้เหมาะสมส่วนบุคคล การประมวลผลข้อมูลเกิดขึ้นตาม นโยบายความเป็นส่วนตัว.
ยอมรับทั้งหมด ปรับแต่ง ปฏิเสธ