⊗jsrtPmFmsChI 62 of 112 menu

Trabajo con checkbox en React

El trabajo con checkbox también se realiza de manera similar, solo que en lugar del atributo value indicamos el atributo checked. Si pasamos true a este atributo, el checkbox estará marcado, y si pasamos false - no estará marcado:

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

Normalmente al atributo checked se le pasa un estado que contiene un valor lógico:

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

Al igual que cuando se trabaja con inputs, si se establece rígidamente el valor del atributo checked - no se podrá cambiar el estado del checkbox. Para un funcionamiento correcto, al cambiar el checkbox cambiaremos su estado al valor opuesto al actual:

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

Podemos simplificar:

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

Mostremos el estado del checkbox en un párrafo, usando el operador ternario:

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

Se dan un checkbox, un botón y un párrafo. Al hacer clic en el botón, si el checkbox está marcado, muestre en el párrafo un texto de saludo al usuario, y si no está marcado, un texto de despedida.

Con tres checkboxes, pida al usuario que elija los lenguajes que conoce: html, css y js. Muestre el resultado de la selección de cada lenguaje en párrafos separados.

Español
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar