HTML                
            Sterowanie menu wyboru
        
        
            
    Szukaj…
Składnia
-  
<select name=""></select> -  
<datalist id=""></datalist> -  
<optgroup label="Option Group"></optgroup> -  
<option value="">Option</option> 
Wybierz menu
 Element <select> generuje menu rozwijane, z którego użytkownik może wybrać opcję. 
<select name="">
  <option value="1">One</option>
  <option value="2">Two</option>
  <option value="3">Three</option>
  <option value="4">Four</option>
</select>
 Zmiana rozmiaru
 Możesz zmienić rozmiar menu wyboru za pomocą atrybutu size . Rozmiar 0 lub 1 wyświetla standardowe menu stylu rozwijanego. Rozmiar większy niż 1 przekształci listę rozwijaną w pole wyświetlające tyle linii, z jedną opcją na linię i paskiem przewijania, aby przewijać dostępne opcje. 
<select name="" size="4"></select>
 Menu wyboru z wieloma opcjami
 Domyślnie użytkownicy mogą wybrać tylko jedną opcję. Dodanie atrybutu multiple umożliwia użytkownikom wybranie wielu opcji jednocześnie i przesłanie wszystkich wybranych opcji za pomocą formularza. Użycie atrybutu multiple powoduje automatyczne przekształcenie menu rozwijanego w pole, tak jakby miało zdefiniowany rozmiar. Rozmiar domyślny, gdy to nastąpi, jest określany przez konkretną przeglądarkę, której używasz, i nie jest możliwe, aby zmienić go z powrotem na rozwijane menu stylu, umożliwiając jednocześnie wielokrotny wybór. 
<select name="" multiple></select>
  Podczas korzystania z atrybutu multiple istnieje różnica między użyciem wartości 0 i 1 dla rozmiaru, natomiast nie ma żadnej różnicy, gdy atrybut nie jest używany. Użycie 0 spowoduje, że przeglądarka będzie zachowywać się w dowolny domyślny sposób. Użycie 1 spowoduje jawne ustawienie rozmiaru wynikowego pola na wysokość tylko jednego wiersza. 
Grupy opcji
 Możesz starannie pogrupować opcje w menu wyboru, aby zapewnić bardziej uporządkowany układ na długiej liście opcji, używając elementu <optgroup> . 
 Składnia jest bardzo prosta, wystarczy użyć elementu z atrybutem label celu zidentyfikowania tytułu dla grupy i zawierającego zero lub więcej opcji, które powinny znajdować się w tej grupie. 
<select name="">
  <option value="milk">Milk</option>
  <optgroup label="Fruits">
    <option value="banana">Bananas</option>
    <option value="strawberry">Strawberries</option>
  </optgroup>
  <optgroup label="Vegetables" disabled>
    <option value="carrot">Carrots</option>
    <option value="zucchini">Zucchini</option>
  </optgroup>
</select>
 Podczas korzystania z grup opcji nie wszystkie opcje muszą być zawarte w grupie. Wyłączenie grupy opcji spowoduje również wyłączenie wszystkich opcji w grupie i ręczne ponowne włączenie pojedynczej opcji w wyłączonej grupie nie jest możliwe.
Opcje
Opcje w menu wyboru są tym, co wybierze użytkownik. Normalna składnia opcji jest następująca:
<option>Some Option</option>
  Należy jednak zauważyć, że tekst wewnątrz samego elementu <option> nie zawsze jest używany i zasadniczo staje się wartością domyślną dla atrybutów, które nie są określone. 
 Atrybuty sterujące rzeczywistym wyglądem i funkcją opcji to value i label . Etykieta reprezentuje tekst, który zostanie wyświetlony w menu rozwijanym (to, na co patrzysz i klikniesz, aby je wybrać). Wartość reprezentuje tekst, który zostanie wysłany wraz ze złożeniem formularza. Jeśli jedna z tych wartości zostanie pominięta, zamiast tego zostanie użyty tekst wewnątrz elementu. Tak więc powyższy przykład można „rozszerzyć” na to: 
<option label="Some Option" value="Some Option">
 Zwróć uwagę na pominięcie tekstu wewnętrznego i znacznika końcowego, które nie są wymagane do skonstruowania opcji w menu. Gdyby zostały uwzględnione, tekst wewnętrzny zostałby zignorowany, ponieważ oba atrybuty są już określone, a tekst nie jest potrzebny. Jednak prawdopodobnie nie zobaczysz wielu ludzi piszących je w ten sposób. Najczęstszym sposobem, w jaki jest zapisywany, jest wartość, która zostanie wysłana na serwer wraz z tekstem wewnętrznym, który ostatecznie staje się atrybutem label, tak jak:
<option value="option1">Some Option</option>
 Domyślne wybranie opcji
 Możesz także określić domyślną opcję, która ma zostać wybrana w menu, dołączając do niej selected atrybut. Domyślnie, jeśli nie zostanie wybrana żadna opcja wybrana w menu, pierwsza opcja w menu zostanie wybrana podczas renderowania. Jeśli do selected atrybutu dołączono więcej niż jedną opcję, ostatnią opcją obecną w menu z tym atrybutem będzie ta wybrana domyślnie. 
<option value="option1" selected>Some option</option>
 Jeśli używasz atrybutu w menu wyboru z wieloma opcjami, wówczas wszystkie opcje z atrybutem zostaną wybrane domyślnie, a żadna z nich nie zostanie wybrana, jeśli żadna z opcji nie ma atrybutu.
<select multiple>
  <option value="option1" selected>Some option</option>
  <option value="option2" selected>Some option</option>   
</select>
        Datalist
 <datalist> określa listę wstępnie zdefiniowanych opcji dla elementu <input> . Zapewnia funkcję „autouzupełniania” elementów <input> . Użytkownicy zobaczą rozwijaną listę opcji podczas pisania. 
<input list="Languages">
<datalist id="Languages">
  <option value="PHP">
  <option value="Perl">
  <option value="Python">
  <option value="Ruby">
  <option value="C+">
</datalist>
 Obsługa przeglądarki
| Chrom | Krawędź | Mozilla | Safari | Opera | 
|---|---|---|---|---|
| 20,0 | 10,0 | 4.0 | Niewspierany | 9.0 |