⊗jsPmFmRd 402 of 505 menu

Lavorare con i pulsanti radio in JavaScript

Ora lavoriamo con i pulsanti radio. Rappresentano un gruppo di interruttori, dei quali può essere selezionato solo uno. Affinché più pulsanti radio formino un gruppo, devono avere lo stesso valore dell'attributo name:

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

E per distinguere in JavaScript quale pulsante è stato selezionato, a ogni pulsante radio nel gruppo vengono aggiunti attributi value con valori diversi:

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

Per rendere un pulsante radio selezionato per impostazione predefinita, è necessario assegnargli l'attributo checked:

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

Vediamo in pratica come lavorare con questi pulsanti in JavaScript. Supponiamo di avere il gruppo di pulsanti radio presentato sopra, e anche un pulsante normale:

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

Facciamo in modo che cliccando sul pulsante, venga visualizzato sullo schermo il value del pulsante radio che è attualmente selezionato.

Per risolvere il problema è necessario scorrere tutti i nostri pulsanti radio con un ciclo e determinare quale di essi è selezionato. Per questo bisogna leggere il valore della proprietà checked di ciascuno dei pulsanti radio iterati. Quello per cui questa proprietà è uguale a true - è il pulsante radio selezionato.

Implementiamo quanto descritto:

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

Sono dati 3 pulsanti radio, un paragrafo e un pulsante. Al click sul pulsante, visualizza nel paragrafo il value del pulsante radio selezionato.

Italiano
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesia日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Utilizziamo i cookie per il funzionamento del sito, l'analisi e la personalizzazione. I dati vengono elaborati in conformità con la Politica sulla privacy.
accetta tutto personalizza rifiuta