HTML (14) - formuláře 4

Známe skoro všechny formulářové prvky, ale jestě nám k úplné dokonalosti chybí formulářový prvek <select>

9.9.2004 15:00 | Pavel Kácha | přečteno 26325×

<select>

Tag <select></select> slouží pro vytváření seznamů, ze kterých si uživatel může vybrat jednu až n položek. Je to párový element, ukončovací tag je vyžadovaný.

Atributem name="" určíme jméno proměnné, která má obsahovat nejakou hodnotu podle volby uživatele.

Pomocí atributu size="" si můžeme zvolit kolik řádků ze seznamu se má zobrazit najednou. Většinou se parametr size="" nastavuje na hodnotu 1, tím vznikne seznam, ze kterého je vidět jen jedna položka (ta právě vybraná) a ostatní položky jsou přístupné pomocí tlačítka, které nám vyroluje celý seznam. Toto zobrazeni neplati samozřejmě všeobecně, přesný způsob zobrazení závisí na konkrétním použitém prohlížeči.

Výchozí nastavení udává, že ze seznamu je možné vybrat jen jednu položku. Často se ale setkáme s nutností dovolit uživateli vybrat si více nabízených možností. Není to nic složitého, stačí k tomu přidat do elementu <select> atribut multiple. Tento atribut nemá nadefinovanou žádnou hodnotu.

K dispozici jsou vám opět tyto známé atributy: id="", class="", lang="", dir="", title="", style="", disabled="", tabindex="", onclick="", ondblclick="", onmousedown="", onmouseup="", onmouseover="", onmousemove="", onmouseout="", onkeypress="", onkeydown="", onkeyup="".

<option>

Definici výběrového seznamu už máme hotovou. Teď začneme definovat jednotlivé položky seznamu. Pomůže nám v tom párový prvek <option>. Ukončovací tag je nepovinný, ale je lepší ho používat. V tomto elementu můžete použít atribut value="". Jeho hodnotou bude hodnota, kterou chcete předávat zpracovávajícímu scriptu při vybrání této položky.

Za normálních okolností se automaticky předvybere první položka v seznamu. V případě, že chcete předvybrat jinou položku (např. při navrácení formuláře s chybami, aby nemusel uživatel vše znovu vyplňovat) použijte atribut selected. Tento atribut nemá nadefinovanou žádnou hodnotu.

Dále můžete použít tyto známé atributy: id="", class="", lang="", dir="", title="", style="", disabled="", tabindex="", onclick="", ondblclick="", onmousedown="", onmouseup="", onmouseover="", onmousemove="", onmouseout="", onkeypress="", onkeydown="", onkeyup="".

<optgroup>

V HTML 4.0 se objevil nový tag <optgroup></optgroup>, který nám dovoluje seznamy zpřehlednit seskupením položek, které k sobě logicky patří. Seznam se potom zobrazí jako víceúrovňové menu, konkrétní způsob zobrazení se může v různých prohlížečích lišit.

Tagem <optgroup></optgroup> dáte prohlížeči vědět, že chcete vytvořit v menu skupinu a mezi otevírací a ukončovací tag napíšete klasické prvky <option>. Ještě je ale musíte doplnit o atribut label="", tím určíte text, který se má v menu zobrazit jako popiska této konkrétní položky. Stejně tak použijte atribut label="" i u tagu <optgroup>. Pokud prohlížeč nepodporuje tento způsob zobrazení seznamu, zobrazí se jako kdyby jste tagy <optgroup></optgroup> vůbec nepoužili.

V elementu <optgroup> můžete použít také tyto atributy: id="", class="", lang="", dir="", title="", style="", disabled="", tabindex="", onclick="", ondblclick="", onmousedown="", onmouseup="", onmouseover="", onmousemove="", onmouseout="", onkeypress="", onkeydown="", onkeyup="".

Praktická ukázka

<select name="verze_linuxu" size="1">
 <optgroup label="Mandrake">
  <option value="mdk10" label="10.0">Mandrake 10.0</option>
  <option value="mdk9" label="9.x">Mandrake 9.x</option>
 </optgroup>
 <optgroup label="SUSE">
  <option value="suse9.1" label="9.1">SUSE 9.1</option>
  <option value="suse9.0" label="9.0">SUSE 9.0</option>
  <option value="suse8.x" label="8.x">SUSE 8.x</option>
 </optgroup>
</select>

To je pro dnešek vše a příště si povíme, jak by měl vypadat formulář, aby se s ním uživatelům dobře pracovalo.

Online verze článku: http://www.linuxsoft.cz/article.php?id_article=404