Katalog ASP odkaz∙: Hledßte informace o ASP? Zkuste nßÜ nov² katalog odkaz∙ na ASP weby. Vφce zde...
TextLink.cz
VyÜlo: 27.12.2000 Rubrika: ASP - Tipy

Zpracovßnφ atributu CHECKED ve formulß°ovΘm poli
Chcete-li od nßvÜt∞vnφka zφskat informace typu ANO/NE, bude se Vßm jist∞ hodit atribut CHECKED ve formulß°ovΘm poli INPUT pomocφ kterΘho lze takovΘto informace snadno zφskat. V Φlßnku se dozvφte jak se toto pole chovß a jakΘ hodnoty vracφ. Vφce naleznete v Φlßnku...

Pokud chcete nßvÜt∞vnφka VaÜich strßnek vtßhnout do aktivnφ komunikace, nebo od n∞j zφskat n∞kterΘ informace, tak se jist∞ neobejdete bez formulß°∙ a jejich zpracovßnφ. Nφ₧e bych cht∞l ukßzat jak zpracovat formulß°ovΘ pole checkbox. Je zvlßÜtnφ tφm, ₧e vracφ n∞jakou hodnotu pouze pokud je checked (zaÜkrtnutΘ) v opaΦnΘm p°φpad∞ nevracφ nic.

P°φklad takovΘho formulß°e je zde:

Login:
Heslo:
Ulo₧it p°ihlaÜovacφ ·daje na disk


Prßv∞ polφΦko checkbox, ale nejen ono, m∙₧e b²t kamenem ·razu. V ASP sice existuje funkce IsNull, kterß se p°φmo nabφzφ jako °eÜenφ tohoto p°φpadu. Ale nenφ tomu tak. V∞tÜinou staΦφ hodnotu otestovat na prßzdn² °et∞zec. Tzn. ₧e podmφnka typu

If IsNull(Request.Form("ulozit")) then
ááP°φkazy
End If


je v tomto p°φpad∞ zbyteΦnß. V²sledkem tΘto podmφnky je toti₧ hodnota FALSE (nespln∞no). Ale podmφnka

If Request.Form("ulozit"))="" then
ááP°φkazy
End If


v∞tÜinou postaΦuje. Navφc jeÜt∞ existuje funkce IsEmpty, kterß ovÜem nenφ tak moc znßmß. Pokud tedy pou₧ijeme podmφnku:

If IsEmpty(Request.Form("ulozit")) then
ááP°φkazy
End If


Bude v²sledkem hodnota TRUE (spln∞no) u polφ typu checkbox. Jinak je tomu u pole typu text. U n∞ho je spln∞n test pouze na prßzdn² °et∞zec. FunkΦnost t∞chto podmφnek si m∙₧ete vyzkouÜet na formulß°i uvedenΘm v²Üe, kter² je zpracovßvßn ASP scriptem a vypφÜe hodnoty dle aktußlnφho vypln∞nφ formulß°e. Samoz°ejm∞ pokud vyplnφte veÜkerΘ pole tak vÜechny podmφnky nebudou spln∞ny.

Tφmto jsem jen cht∞l nastφnit jak zpracovat formulß°ovΘ pole kterΘ nenφ vypln∞no. Podobn∞ se tudφ₧ dajφ zpracovat i pole tytu text i ostatnφ pole bez hodnoty (je vhodnΘ si vyzkouÜet kterΘ testy na kterΘ typy polφ jsou funkΦnφ).

A jak toto vyu₧φt p°i praktickΘm pou₧itφ? Nap°. mßme-li databßzi a v nφ sloupec typu BOOLEAN (ANO/NE), musφme p°i vklßdßnφ hodnot zadat bu∩ hodnotu TRUE (ANO) nebo FALSE (NE). Jak tedy zpracovat jednoduÜe formulß°ovΘ pole typu checked? Ten kdo Φetl pozorn∞ Φlßnek to u₧ vφ a ostatnφ nech¥ se podφvajφ zde:

If IsEmpty(Request.Form("ulozit")) then
ááUlozit=FALSE
Else
ááUlozit=TRUE
End If


ZdrojovΘ texty pro tento p°φklad naleznete zde.

DuÜan Porwol
mushing@mushing.cz



   Souvisejφcφ Φlßnky
TextLink.cz