⊗jsrtPmFmsChI 62 of 112 menu

Làm việc với checkbox trong React

Làm việc với checkbox cũng được thực hiện theo nguyên tắc tương tự, chỉ thay vì thuộc tính value thì chúng ta chỉ định thuộc tính checked. Nếu truyền vào thuộc tính này true - checkbox sẽ được đánh dấu, còn nếu là false - sẽ không được đánh dấu:

function App() { return <div> <input type="checkbox" checked={true} /> đã đánh dấu <input type="checkbox" checked={false} /> chưa đánh dấu </div>; }

Thông thường vào thuộc tính checked được truyền vào state, chứa giá trị logic:

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

Cũng giống như khi làm việc với input, nếu gán cứng giá trị cho thuộc tính checked - trạng thái của checkbox sẽ không thể thay đổi được. Để hoạt động chính xác, chúng ta sẽ thay đổi state của nó thành giá trị ngược lại khi checkbox thay đổi:

function App() { const [checked, setChecked] = useState(true); function handleChange() { setChecked(!checked); // đảo ngược state } return <div> <input type="checkbox" checked={checked} onChange={handleChange} /> </div>; }

Chúng ta có thể đơn giản hóa:

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

Hãy hiển thị trạng thái của checkbox vào một đoạn văn, sử dụng toán tử ba ngôi:

function App() { const [checked, setChecked] = useState(true); return <div> <input type="checkbox" checked={checked} onChange={() => setChecked(!checked)} /> <p>trạng thái: {checked ? 'đã đánh dấu' : 'chưa đánh dấu'}</p> </div>; }

Cho một checkbox, một nút bấm và một đoạn văn. Khi nhấp vào nút bấm, nếu checkbox được đánh dấu, hãy hiển thị trong đoạn văn văn bản chào mừng người dùng, còn nếu không được đánh dấu - văn bản tạm biệt.

Sử dụng ba checkbox, yêu cầu người dùng chọn các ngôn ngữ mà họ biết: html, css và js. Kết quả lựa chọn cho từng ngôn ngữ hiển thị vào các đoạn văn riêng biệt.

Tiếng Việt
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ʻzbek
Chúng tôi sử dụng cookie để vận hành trang web, phân tích và cá nhân hóa. Việc xử lý dữ liệu được thực hiện tuân theo Chính sách bảo mật.
chấp nhận tất cả tùy chỉnh từ chối