Autor | Zpráva | ||
---|---|---|---|
Tomson Profil |
#1 · Zasláno: 4. 11. 2005, 15:06:24
Ahoj, mám malý dotaz. Narážím na jeden problém a to. Mám ve flashi formulář v něm Input texty. Potřebuju ověřit, jestli je to políčko prázdné nebo je tam nějaký text (něco jako povinná položka). Když je v poli nějaký text třeba "a"
on (release) { if (nazev_pole == "a") { gotoAndStop("chyba"); } else { gotoAndStop("ok"); } } , tak to funguje správně, ale když je v poli prázdno tak mi to nefachčí. Mám to zadané takhle on (release) { if (nazev_pole == "") { gotoAndStop("chyba"); } else { gotoAndStop("ok"); } } Je tam nějaká chyba?? Určitě jo, ale kde. Obešel jsem to tak, že jsem do toho Input textu vložil mezeru a do scriptu jsem dal ... if (nazev_pole == " ") {...., funguje to, ale určitě to jde přesněji. Pak mám ještě druhý dotaz. Těch polí k ověření mám 5, potřeboval bych, aby se ke každému zobrazovala jiná chybová hláška (zdejte e-mail, zadejte název firmy, zadejte telefonní číslo atd.) Zkoušel jsem to takhle on (release) { if (nazev_pole == " ") { gotoAndStop("chyba"); if (nazev_pole == " ") gotoAndStop("chyba2"); if (nazev_pole == " ") gotoAndStop("chyba3"); if (nazev_pole == " ") gotoAndStop("chyba4"); if (nazev_pole == " ") gotoAndStop("chyba5"); }else { gotoAndStop("ok"); } } sice jsem docílil toho, že jsem musel něco zadat do všech určených polí, ale hlášku to zobrazovalo jenom z té poslední podmínky if Díky za radu |
||
Hanz Profil |
#2 · Zasláno: 4. 11. 2005, 17:20:06
Tomson
Když v poli nic není tak je to undefined. Takže: on (release) { if (nazev_pole == "" || nazev_pole == undefined) { gotoAndStop("chyba"); } else { gotoAndStop("ok"); } } |
||
Tomson Profil |
#3 · Zasláno: 4. 11. 2005, 18:24:59
ok a s tím druhým dotazem bys mi taky dokázal poradit, aby se k jednotlivému poli zobrazoval příslušný text???
Díky |
||
Hanz Profil |
#4 · Zasláno: 4. 11. 2005, 19:54:07
Tomson
Aha, taho druhého jsem si nevšiml. 1) Chybí ti tam dost závorek, ale to by nemněla bát ta chyba. 2) Jde o to, že se nejdřív provede celý AS a potom až funkce. Protože to nemůže reagovat na všechny funkce tak to udělá až tu poslední a ještě kevšemu to else se vztahuje jen k té poslední položce. jinými slovy to máš zcela špatně. 3) Musíš použít if(){}else if(){}else if(){}........................................else{} |
||
Tomson Profil |
#5 · Zasláno: 4. 11. 2005, 20:07:47
Já to nejdřív měl se všema závorkama
on (release) { if (nazev_pole == " ") { gotoAndStop("chyba"); } if (nazev_pole == " ") { gotoAndStop("chyba2"); } . . . else { gotoAndStop("ok"); } } jenže to se pak opravdu vztahovalo pouze k tomu poslednímu. Když jsem to udělal takhle viz výše (bez těch závorek), tak se to vztahovalo pro všechny, ale s tím, že se zobrazoval pouze jenom ten jeden text. Tu variantu, kterou říkaš ty, if(){}else if(){}else if... vyzkouším ještě jednou, teď si nejsem jistý, jestli jsem tuhle variantu zkoušel, bylo ji moc :o)). Myslím, že jsem jí zkoušel, ale taky tam byl nějaký problém. Dám ještě vědět, zatím díky |
||
Časová prodleva: 3 dny
|
|||
Tomson Profil |
#6 · Zasláno: 7. 11. 2005, 09:56:07
Tak jsem to udělal, tak jaks říkal:
on (release) { if (pole1 == " "){ gotoAndStop(2); }else { gotoAndStop(6); }; if (pole2 == " "){ gotoAndStop(3); }else { gotoAndStop(6); }; if (pole3 == " "){ gotoAndStop(4); }else { gotoAndStop(6); }; if(pole4 == " "){ gotoAndStop(5); }else { gotoAndStop(6); } } bohužel takhle se to vztahuje jenom pro to pole4, bere to v potaz jenom tu poslední podmínku |
||
Tomson Profil |
#7 · Zasláno: 8. 11. 2005, 16:16:18
Nepomohla by nějaká funkce "a zároveň" nebo něco takovýho?
|
||
Anonymní Profil * |
#8 · Zasláno: 10. 11. 2005, 08:18:36
Pomůže mi prosím někdo s tímhle problémem???
Díky |
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0