Autor | Zpráva | ||
---|---|---|---|
tomikl Profil * |
#1 · Zasláno: 11. 3. 2012, 13:27:25
Ahjote, potreboval by som pomoct
mam spraveny formular, ale nechce mi ho odoslat. ide o povinne udaje vo formulari. Formular: <table border="0" > <form action="send2.php" method="post" name="frm1" onsubmit="return validate(this)"> <td colspan="2"><strong>Objednávka</strong><br> <br><p> <? $row = split(";", $basket); for ($i = 0;$i<sizeof($row)-1;$i++) { echo($row[$i]); echo("<br>"); } ?> </p> </td> <!--Meno--> <tr class="txt"><tr class="txt"> <td width="100">Meno a priezvisko/Názov firmy:</td> <td ><input type="text" name="meno" class="t1" id="meno" >  *</td> </tr><!--Meno--> <!--Mesto--> <tr class="txt"> <td width="100" height="5">Mesto:</td> <td><input type="text" name="mesto" class="t1">  *</td> </tr> <!--Mesto--> <!--Ulica--> <tr class="txt"> <td width="100">Ulica:</td> <td><input type="text" name="ulica" class="t1">  *</td> </tr><!--Ulica--> <!--PSČ--> <tr class="txt"> <td width="100">PSČ:</td> <td><input type="text" name="psc" class="t1">  *</td> </tr><!--PSČ--> <!--Tel--> <tr class="txt"> <td width="150">Telefónne číslo:</td> <td><input type="text" name="tel" class="t1" vspace="fgdfgE" ></td> </tr><!--Tel--> <!--Email--> <tr class="txt"> <td width="150">Email:</td> <td><input type="text" name="email" class="t1"></td> </tr><!--Email--> <!--IČO--> <tr class="txt"> <td width="150">IČO:</td> <td><input type="text" name="ico" class="t1"></td> </tr><!--IČO--> <!--IČ DPH--> <tr class="txt"> <td width="150">IČ DPH:</td> <td><input type="text" name="icdph" class="t1"></td> </tr><!--IČ DPH--> <!--Poznamka--> <tr class="txt"> <td width="150" colspan="2">Poznámka:</td> </tr> <tr class="txt" > <td colspan="2"><textarea name="text" rows="7" cols="30"></textarea></td> </tr> <table> <tr class="txt"> <td align="center" class="txt"><a href="javascript:val();" >Pokračovať v objednávke</a></td> </tr> </table> </form> </table> A toto je javascript.js, v ktorom mam funkciu a podmienku function val(){ var meno = document.getElementById('meno'); var mesto = document.getElementById('mesto'); var ulica = document.getElementById('ulica'); var psc = document.getElementById('psc'); if (document.meno&&document.mesto) { alert ("Nezadali ste vsetkz udaje"); } } Nechce mi to volbec odoslat. Neviete niekto poradit? dakujem |
||
panther Profil |
#2 · Zasláno: 11. 3. 2012, 17:01:54
tomikl:
1. nikde není nic o tom, že bych se formulář měl odeslat. Chybí input typu submit nebo button , odkaz nemá atribut href vedoucí někam, resp. ve scriptu není nic o tom, že se s formulářem má něco dít.
2. podmínka na 6. řádku je nesmysl, jednou „document“ už máš v proměnné, kontroluj tedy pouze if (meno && mesto)
3. tato podmínka projde vždy, kdy pole existují. Pravděpodobně chceš kontrolovat jejich hodnoty, tedy document.getElementById('meno').value
4. PSČ musí mít nějaký formát, nestačí pouze kontrolovat vyplnění/nevyplnění hodnoty. Kromě toho, JS se dá vypnout, kontrola musí proběhnout i na serveru. |
||
tomikl Profil * |
#3 · Zasláno: 11. 3. 2012, 17:11:25
panther
no ved formular sa ma odoslat cez <form action="send2.php" method="post" name="frm1" onsubmit="return validate(this)">
ci nie? a atribut href je dany: <a href="javascript:val();" >Pokračovať v objednávke</a> vedel by si mi s tym nejak poradit? |
||
panther Profil |
#4 · Zasláno: 11. 3. 2012, 17:18:28
tomikl:
onsubmit jsem přehlédl. Co máš špatně ve funkci val() , jsem ti naznačil. Jak vypadá funkce validate , kterou jsi nám neukázal, nevtuším.
Ale platí to, co jsem napsal - nikde formulář neodesíláš. Čím myslíš, že vyvoláš událost onsubmit , když v kódu žádný input submit/image nebo button nemáš? Odkazem formulář také nedosíláš, ani jím nikam nepřecházíš - pouze kontroluješ (resp. snažíš se kontrolovat) zadané hodnoty ve formuláři.
|
||
tomikl Profil * |
#5 · Zasláno: 11. 3. 2012, 17:35:11
panther:
vedel by si mi poradit ako to napisat do jscript? |
||
panther Profil |
#6 · Zasláno: 11. 3. 2012, 17:43:23
tomikl:
<form action="send2.php" method="post" name="frm1"> ... </form> <script> function val(){ var meno = document.getElementById('meno').value; ... if (meno) { //dalsi podminky, resp. dalsi pole document.forms['frm1'].submit(); } else { alert ('chybi meno') } } </script> Všechno jsem ti napsal už v minulých příspěvcích, stačilo trochu vlastní snahy. |
||
Časová prodleva: 14 let
|
0