A value attribútumok a select elemben Reactben

Tegyük fel, hogy most a option tag-ekben van value attribútum:

jsxfunction App() {
  return <div>
    <select>
      <option value="1">text1</option>
      <option value="2">text2</option>
      <option value="3">text3</option>
    </select>
  </div>;
}

Ebben az esetben a value attribútumok léte miatt az állapotba pontosan ezek az értékeik kerülnek be, nem pedig a option tag-ek szövege. Ebben meggyőződhetünk, ha a kiválasztás eredményét egy bekezdésben jelenítjük meg:

jsxfunction App() {
  const [value, setValue] = useState('');
  
  return <div>
    <select value={value} onChange={(event) => setValue(event.target.value)}>
      <option value="1">text1</option>
      <option value="2">text2</option>
      <option value="3">text3</option>
    </select>
    <p>
      az ön választása: {value}
    </p>
  </div>;
}

Az option szövegének és értékének szétválasztása kényelmes lehet: a tag szövegét tetszés szerint módosíthatjuk, miközben a szkriptünkben a választás eredménye a value attribútum értéke alapján kerül feldolgozásra, amely változatlan marad.

Nézd meg a példát:

jsxfunction App() {
  const [value, setValue] = useState('');
  
  return <div>
    <select value={value} onChange={event => setValue(event.target.value)}>
      <option value="1">text1</option>
      <option value="2">text2</option>
      <option value="3">text3</option>
    </select>
    <p>
      {value === '1' && 'az első pontot választotta'}
      {value === '2' && 'a második pontot választotta'}
      {value === '3' && 'a harmadik pontot választotta'}
    </p>
  </div>;
}

Most, ha megváltoztatjuk a option tag-ek szövegét, a szkript működése nem fog megbomlani - hiszen a value attribútum értékéhez kötődik.

Задание 1

Egy legördülő lista segítségével kínálja fel a felhasználónak, hogy válassza ki, melyik korosztályba tartozik: 0-tól 12 évesig, 13-tól 17 évesig, 18-tól 25 évesig, vagy 25 évesnél idősebb.