Autor | Zpráva | ||
---|---|---|---|
blbec Profil * |
#1 · Zasláno: 15. 3. 2012, 08:38:12
mám formulř který až doteď fungoval jenže do něj chi umístit cyklus for ale nevím kam a nevím jak
zkoušel jsem už snad všechno, naPŘ. <script type="text/javascript"> for (i=parseInt(a.value); i<=parseInt(b.value); i++; ) function secti () { with (document.form) { c.value = Math.pow(parseInt(i.value),2); } } </script> <form name="form"> <input name="a"> + <input name="b"> = <input name="c"> <input type="button" onClick="secti();" value="Odeslat"> </form> |
||
Joker Profil |
#2 · Zasláno: 15. 3. 2012, 09:26:22
blbec:
Ten skript je naprostý chaos. • Proč je cyklus dřív než to function, mělo by to být snad obráceně. Takhle se v cyklu definuje funkce, což je nesmysl. • Navíc by ten for musel být ještě za with(document.form), jinak neexistují proměnné a a b. • V proměnné i je výsledek parseInt, tedy číslo nebo NaN, ani jedno nemá atribut value, takže parseInt(i.value) je nesmysl.
• Kdyby to bylo spravené a funkční, neřeší se, že parseInt může vrátit i NaN, takže když v jednom z políček nebude číslo a ve druhém ano, vznikne nekonečný cyklus. • Nekonečný cyklus by vznikl i v případě, kdy b je menší než a. |
||
blbec Profil * |
#3 · Zasláno: 15. 3. 2012, 09:41:37
no jo jenže na jpw opravdu není napsané nic o formulářích s cyklůy (aspoň pokud vím) takže jsem ten kód prostě jen vycucal z prstu...
Opravil jsem to a vypadá to takhle ale pořád to nefunguje: <script type="text/javascript"> function secti () { with (document.form) for (i=parseInt(a.value); i<=parseInt(b.value); i++; ) { c.value = Math.pow(i,2); } } </script> <form name="form"> <input name="a"> + <input name="b"> = <input name="c"> <input type="button" onClick="secti();" value="Odeslat"> </form> |
||
Sir Tom Profil |
blbec:
1/ ten JS má být až za formulářem 2/ a v něm <script type="text/javascript"> function secti(){ var a = document.form.a.value; var b = document.form.b.value; var mensi; var vetsi; var suma = 0; if(a<b){ mensi = a; vetsi = b; }else{ mensi = b; vetsi = a; } for(i=mensi; i<=vetsi; i++){ suma = suma + i*i; } document.form.c.value = suma; } </script> |
||
blbec Profil * |
#5 · Zasláno: 16. 3. 2012, 08:49:25 · Upravil/a: blbec
ok když už jsme u if a var, chtěl bych se ještě zeptat (a nechce se mi kvli tomu zakládat nové téma), jak se dá udělat proměnná ze zvolené položky ve výběrovém poli ve formuláři?
edit: mám totiž ve formuláři ve výběrovém poli nějaká čísla a pokud se zvolené číslo odtud bude rovnat např. dvojce, vynásobí se tohle číslo 1. Pokud se nebude rovnat dvojce, bude vynásobeno číslem 0. |
||
Sir Tom Profil |
#6 · Zasláno: 16. 3. 2012, 13:12:39
blbec:
Nové téma bych založil, ale budiž. Hodnotu ve výběrovém poli (select) zjistíš jako document.jmenoFormulare.jmenoSelectu.value; var hodnota = document.form.vyberovka.value; |
||
Časová prodleva: 14 let
|
0