Zpracování vícenásobné hodnoty formulářového pole v ASP
Pokud ve formuláři použijeme pole SELECT s možností vícenásobné volby, dostáváme několik hodnot pro jeden název formulářového pole. Stejně tak, pokud máme ve formuláři více polí se stejným názvem. Tento článek vám poradí, jak tyto hodnoty zpracovat v ASP.
U formulářového prvku SELECT můžeme uvedením parametru MULTIPLE umožnit označení více hodnot. Hodnota SIZE pak určuje počet zobrazených řádků. Při odeslání formuláře se předává seznam hodnot VALUE všech označených voleb.
|
Viz příklad.
Druhým typickým případem je zaškrtávací políčko CHECKBOX. Pokud dáme několika prvkům CHECKBOX stejný název NAME, dostáváme opět několik hodnot VALUE, pro všechna zaškrtnutá pole.
|
Viz příklad.
Obecně můžeme ve formuláři mít několik polí se stejným názvem. Nic nám nebrání v tom, pojmenovat stejně několik např. textových polí.
|
Viz příklad.
Ale pozor, v tomto případě se odesílají hodnoty všech polí, pro nevyplněná pole tedy prázdný řetězec. Stejně tak můžeme dát stejné NAME skupině jakýchkoliv formulářových polí. Dokonce můžeme zkombinovat různé typy pole. Ale praktická použitelnost asi bude pouze u toho seznamu s možností výcenásebného výběru a u skupiny zaškrtávacích polí.
Při následném zpracovávání takového rormuláře dostáváme pro jeden klíč kolekce request.form resp request.querystring (podle toho, jestli formulář posíláme metodou POST nebo GET) několik hodnot. Jejich zpracování v ASP je velice jednoduché. Obě kolekce nabízí vlastnost Count, která udává počet hodnot pro daný klíč. Tuto vlastnost lze použít i pokud použijeme request bez specifikace, o jakou kolekci jde.
|
Při čtení jednotlivých hodnot pak stačí uvést pořadové číslo hodnoty:
|
Jednoduchý skript pro načtení hodnot formulářového prvku VyberA z našeho prvního příkladu, odeslaného metodou POST, do pole PoleA by tedy vypadal takto:
|
Poznámka: pokud neznáme dopředu velikost pole, můžeme ho vytvořit jako dynamické. To znamená, že při jeho deklaraci příkazem Dim neuvedeme jeho velikost a před jeho použitím tuto velokost určíme příkazem ReDim.
Celý seznam hodnot můžeme přečíst i najednou.
|
Výsledkem je pak textový řetězec, obsahující jednotlivé hodnoty oddělené čárkou a mezerou. Tedy například označením hodnot 1, 3 a 5 dostaneme řetězec "1, 3, 5".
A to je pro dnešek vše, přátelé.
Mohlo by vás také zajímat
-
Landing page: Jak vytvořit landing page s vysokým CTR
7. května 2024 -
Zabezpečení e-mailů: Jak můžete chránit vaši firemní komunikaci
13. prosince 2023 -
Jak vybrat doménu: Co je dobré vědět?
2. září 2024 -
Globální výpadek IT systémů: Může za to jediná aktualizace
19. července 2024
Nejnovější
-
Jak rozšířit úložiště Macu za pětinovou cenu?
16. prosince 2024 -
Nové trendy v doménách pro osobní projekty – DIY, LIVING a LIFESTYLE
9. prosince 2024 -
Jak chránit webové stránky před Web/AI Scrapingem
27. listopadu 2024 -
Jaký monitor je nejlepší k novému Macu Mini?
25. listopadu 2024