⊗jsPmFmRd 402 of 505 menu

Werken met radioknoppen in JavaScript

Laten we nu werken met radioknoppen. Ze vormen een groep schakelaars, waarvan er slechts één geselecteerd kan zijn. Om meerdere radioknoppen een groep te laten vormen, moeten ze dezelfde waarde voor het attribuut name hebben:

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

En om in JavaScript te kunnen onderscheiden welke knop precies was geselecteerd, krijgt elke radioknop in de groep value-attributen met verschillende waarden:

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

Om een radioknop standaard geselecteerd te maken, moet je er het attribuut checked aan toevoegen:

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

Laten we in de praktijk bekijken hoe we met zulke knoppen kunnen werken in JavaScript. Stel dat we de bovenstaande groep radioknoppen hebben, en ook een gewone knop:

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

Laten we ervoor zorgen dat er bij een klik op de knop het value van de radioknop die op dat moment is geselecteerd, op het scherm wordt weergegeven.

Om de taak op te lossen moet je alle radioknoppen doorlopen met een loop en bepalen welke ervan is geselecteerd. Daarvoor moet je de waarde van de eigenschap checked van elke doorgelopen radioknop uitlezen. Bij welke deze eigenschap gelijk is aan true - die radioknop is geselecteerd.

Laten we het beschrevene implementeren:

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); } } });

Er zijn 3 radioknoppen, een alinea en een knop. Bij een klik op de knop moet je in de alinea het value van de geselecteerde radioknop weergeven.

Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren