⊗jsrtPmFmsChI 62 of 112 menu

Travailler avec les checkbox dans React

Travailler avec les checkbox suit également un principe similaire, seulement au lieu de l'attribut value nous indiquons l'attribut checked. Si on passe true à cet attribut - alors la checkbox sera cochée, et si false - ne sera pas cochée :

function App() { return <div> <input type="checkbox" checked={true} /> coché <input type="checkbox" checked={false} /> non coché </div>; }

Généralement, l'état (state) contenant une valeur booléenne est passé à l'attribut checked :

function App() { const [checked, setChecked] = useState(true); return <div> <input type="checkbox" checked={checked} /> </div>; }

De même que pour travailler avec les inputs, si on définit rigidement la valeur de l'attribut checked - l'état de la checkbox ne pourra pas être modifié. Pour un fonctionnement correct, nous changerons son état sur la valeur opposée à chaque modification de la checkbox :

function App() { const [checked, setChecked] = useState(true); function handleChange() { setChecked(!checked); // on inverse l'état } return <div> <input type="checkbox" checked={checked} onChange={handleChange} /> </div>; }

Nous pouvons simplifier :

function App() { const [checked, setChecked] = useState(true); return <div> <input type="checkbox" checked={checked} onChange={() => setChecked(!checked)} /> </div>; }

Affichons l'état de la checkbox dans un paragraphe, en utilisant l'opérateur ternaire :

function App() { const [checked, setChecked] = useState(true); return <div> <input type="checkbox" checked={checked} onChange={() => setChecked(!checked)} /> <p>état : {checked ? 'coché' : 'non coché'}</p> </div>; }

Une checkbox, un bouton et un paragraphe sont donnés. Lors d'un clic sur le bouton, si la checkbox est cochée, affichez dans le paragraphe un texte de salutation à l'utilisateur, et si elle n'est pas cochée - un texte d'au revoir.

À l'aide de trois checkbox, demandez à l'utilisateur de choisir les langages qu'il connaît : html, css et js. Affichez le résultat du choix pour chaque langage dans des paragraphes séparés.

Français
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nous utilisons des cookies pour le fonctionnement du site, l'analyse et la personnalisation. Le traitement des données est effectué conformément à la Politique de confidentialité.
accepter tout personnaliser refuser