⊗jsrtPmFmsAV 67 of 112 menu

Atrybuty value select z tablicy w React

Załóżmy, że elementy listy ponownie przechowywane są w tablicy:

function App() { const texts = ['text1', 'text2', 'text3', 'text4']; const [value, setValue] = useState(''); ... }

Utwórzmy za pomocą tej tablicy znaczniki option, dodając im jako atrybuty value wartości elementów tablicy:

function App() { const texts = ['text1', 'text2', 'text3', 'text4']; const [value, setValue] = useState(''); const options = texts.map((text, index) => { return <option key={index} value={index}>{text}</option>; }); ... }

Korzystając z utworzonych znaczników, stwórzmy rozwijaną listę:

return <div> <select value={value} onChange={event => setValue(event.target.value)}> {options} </select> </div>;

Wypiszmy w akapicie numer wybranego elementu:

return <div> <select value={value} onChange={event => setValue(event.target.value)}> {options} </select> <p> Twój wybór: {value} </p> </div>;

A teraz wypiszmy tekst wybranego elementu, korzystając z jego numeru i tablicy z tekstami:

return <div> <select value={value} onChange={event => setValue(event.target.value)}> {options} </select> <p> Twój wybór: {texts[value]} </p> </div>;

Połączmy wszystko razem i otrzymamy następujący kod:

function App() { const texts = ['text1', 'text2', 'text3', 'text4']; const [value, setValue] = useState(''); const options = texts.map((text, index) => { return <option key={index} value={index}>{text}</option>; }); return <div> <select value={value} onChange={event => setValue(event.target.value)}> {options} </select> <p> Twój wybór: {texts[value]} </p> </div>; }
Polski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wykorzystujemy pliki cookie do działania strony, analizy i personalizacji. Przetwarzanie danych odbywa się zgodnie z Polityką prywatności.
zaakceptuj wszystkie dostosuj odrzuć