ASP.net

Kurz ASP.NET – 3. díl – Jednoduché formuláře

ASP.NET

POZOR! Článek jsem napsal před více jak rokem, a tudíž už nemusí reflektovat můj nynější názor nebo může být zastaralý.

Jak jsem slíbil, dneska si ukáže návrh jednoduchého formuláře a jeho vyhodnocení pomocí C#.

Nejprve si promyslíme z jakých částí se bude formulář zkládat. Když jsou to ty jednoduché formuláře postačí nám inputy typu text, hidden, checkbox, radio a submit. Záměrně neukážu inputy typu password a file, ty si zaslouží v ASP.NET samostatný článek.

Jak by takový formulář vypadal v HTML?





muž žena

Docela nepřehledný a zdlouhavý ne? V tomhle ohledu naprosto miluju ASP.NET:





muž žena

Alespoň mě osobně se to zdá hezčí pomocí ASP.NET.

Komponenta

Náhrada za input typu

TextBox

text

HiddenField

hidden

CheckBox

checkbox

RadioButton

radio

Button

submit

Pukud byste v ASP.NET chtěli použít pro odeslání formuláře textový odkaz, není nic jednoduššího, než vyměnit Button za LinkButton, použití je úplně stejné.

Serverové zpracování

Nyní už stačí napsat v C# kód pro zpracování formuláře.

void zpracujForm(object sender,EventArgs e){
        name.Text = "
"; name.Text += "Vaše jméno: "+jmeno.Text+"
"; name.Text += "Tlačítko jste: "; if (zaskrtnuto.Checked) name.Text += " zaškrtnul
"; else name.Text += " nezaškrtnul
"; name.Text += "Tlačítko2 jste: "; if (zaskrtnuto2.Checked) name.Text += " zaškrtnul
"; else name.Text += " nezaškrtnul
"; name.Text += "Obsah skrýtého &input>: "+skryty.Value+"
"; name.Text += "A jste: "+radio1.Text+radio2.Text; if (radio1.Checked) name.Text += " muž
"; else if (radio2.Checked) name.Text += " žena
"; }

Objekty v kódu jako jmeno, zaskrtnuto a další jsou prvky formuláře vybrané pomocí jejich ID. Taková proměnná zaskrtnuto.Checked pak vrací hodnotu TRUE nebo FALSE (bool) podle toho jestli je prvek s ID zaskrtnuto zaškrtnut nebo vybrán (v závislosti na to jestli se jedná o RadioButton nebo CheckBox). Jinak textový obsah prvku lze zjistit přes proměnnou idPrvku.Text (jedině u HiddenField je to idPrvku.Value).

Celý výsledný kód:

<%@ Page Language="C#" %>  
  
  
 
  Jednoduchý formulář 
  
  
    
Zadejte vaše jméno:
Zaškrtněte tlačítko:
Zaškrtněte tlačítko2:
Skrytý <input>:
Jste: muž žena

Znáte někoho, komu by článek mohl pomoct? Zasdílejte mu ho :)

Komentáře