Autor | Zpráva | ||
---|---|---|---|
Anonym Profil * |
html:
<form action="form.php" id="form" name="form" method="post" onSubmit="cekniForm()"> <input type="text" name="celeMeno" id="celeMeno" /> <input type="text" name="ulica" id="ulica"/> js: function cekniForm() { celeMeno = document.form.celeMeno.value; if(celeMeno == "") { document.form.celeMeno.style.borderColor="red"; document.form.celeMeno.value="Vyplnte"; return false; } ulica = document.form.ulica.value; if(ulica == "") { document.form.ulica.style.borderColor="red"; document.form.ulica.value="Vyplnte"; return false; } } Dam odoslat : <input type="submit" value="Odoslať" /> a ta funkcia kontroluje hodnoty po jednom. Musim 2X kliknut na odoslat. Ale malo by to ist tak ze ukaze naraz kde je chyba. Vopred diky. Moderátor Chamurappi: Vkládej prosím kódy mezi značky [>pre] a [>/pre] (stačí kliknout na ). Moderátor Chamurappi: Tvůj projev je špatně srozumitelný, piš prosím s diakritikou.
|
||
_es Profil |
#2 · Zasláno: 17. 3. 2010, 00:58:50
Anonym:
Tipol by som si, že bude chyba v tom, že si si neuvedomil, že príkaz return zároveň aj ukončuje funkciu, takže ak budú obe polia nevyplnené, tak to logicky ten text "Vyplnte" nemôže vyplniť v oboch poliach. |
||
peta Profil |
#3 · Zasláno: 17. 3. 2010, 09:57:31
Jj, urcite return :) Takovy tip, kdyz nevis, co se deje, pridej si na problemova mista alerty a sleduj, ktery se zobrazi a ktery uz ne. pak muzes podrobneji zkoumat, proc se to nezobrazi a zakomentovavat jednotlive radky.
|
||
Anonym Profil * |
#4 · Zasláno: 17. 3. 2010, 10:04:02
Ahoj.
Dal som prec return a teraz sa stane to ze sa prejavi funkcia ale potom sa odosle formular dalej. Malo by to byt tak ze kym nikto neda tam nejaky text tak sa neodosle. |
||
Trejpa Profil |
#5 · Zasláno: 17. 3. 2010, 10:22:38 · Upravil/a: Trejpa
Anonym:
function cekniForm() { var odeslat=true; var chyba="Vyplňte" if(document.form.celeMeno.value==""||document.form.celeMeno.value==chyba) { document.form.celeMeno.style.borderColor="red"; document.form.celeMeno.value=chyba; odeslat=false; } if(document.form.ulica.value==""||document.form.ulica.value==chyba) { document.form.ulica.style.borderColor="red"; document.form.ulica.value=chyba; odeslat=false; } return odeslat; } EDIT: + samozřejmě <form … onSubmit="return cekniForm()"> |
||
Chamurappi Profil |
#6 · Zasláno: 17. 3. 2010, 10:51:38
Reaguji na Anonyma:
„ale potom sa odosle formular dalej“ To v tvém původním kódu také, ne? Na to, abys při špatném vstupu zastavil odeslání, bys musel použít: <form … onSubmit="return cekniForm()"> |
||
Časová prodleva: 14 let
|
0