Autor | Zpráva | ||
---|---|---|---|
MilanJ Profil |
#1 · Zasláno: 3. 2. 2007, 12:07:42
Mám formulář, který je vygenerovaný pomocí PHP. Dle určitých podmínek buď vygeneruje nebo naopak nevygeneruje určité políčko formuláře. Formulář kontroluji JavaScriptem, který ale nepozná, jestli políčko existuje nebo ne.
Jak zjistím, jestli určité pole formuláře s určitým ID existuje nebo ne? Děkuji. |
||
MilanJ Profil |
#2 · Zasláno: 3. 2. 2007, 13:17:36
Políčko formuláře vypadá takto: <input name="priloha" type="file" id="idPriloha" />
O JS toho moc nevím, téměř nic, jen jsem zkoušel ověřit existenci takto: if (this.formular.priloha) { // existuje } else {// neexistuje} ...ale nefunguje to. |
||
Joker Profil |
#3 · Zasláno: 3. 2. 2007, 13:19:50
if(document.forms && form=document.forms["*id formuláře*"])
if(form.id_daneho_prvku == undefined){ // prvek neexistuje } else{ // prvek existuje } |
||
MilanJ Profil |
#4 · Zasláno: 3. 2. 2007, 13:30:45 · Upravil/a: MilanJ
Joker
Jak říkámm, nejsem v JS seběhlý, nefunguje mi to. Vložil jsem Tvůj kód do svého scriptu, ale něco tam je špatně, nefunguje to. if(document.forms && form=document.forms["idPriloha"]) if(form.idPriloha == undefined) { window.alert("Formulářové políčko existuje"); if (document.getElementById('idPriloha').value != "") { window.alert("Příloha je vložena"); } else { window.alert("Při vkládání nabídky musí být vložena i příloha!"); } } else { window.alert("Formulářové políčko chybí"); } |
||
Joker Profil |
#5 · Zasláno: 3. 2. 2007, 13:36:26
V tom document.forms["neco"] má být ID formuláře, zatímco v tom form.neco má být ID políčka
Krom toho to máte obráceně; if(form.idPriloha == undefined) znamená, že to políčko neexistuje. |
||
MilanJ Profil |
#6 · Zasláno: 3. 2. 2007, 13:49:13
Joker
Stále mi to v konzoli JS vypisuje chybu "chybná syntaxe "na řádku, kde je if(document.forms && form=document.forms['idFormular']) Proč? |
||
MilanJ Profil |
#7 · Zasláno: 3. 2. 2007, 13:57:05 · Upravil/a: MilanJ
Joker
Script jsem opravil: if(document.forms && form=document.forms['idFormular']) if(form.idPriloha != undefined) { window.alert("Formulářové políčko existuje"); if (document.getElementById('idPriloha').value != "") { window.alert("Příloha je vložena"); } else { window.alert("Při vkládání nabídky musí být vložena i příloha!"); } } else { window.alert("Formulářové políčko chybí"); } ...přesto nefunguje...pořád ta "chybná syntaxe". :/ |
||
MilanJ Profil |
#8 · Zasláno: 3. 2. 2007, 13:58:09
Joker
Nechybí tam nic? |
||
los Profil * |
#9 · Zasláno: 3. 2. 2007, 14:04:16
Chybná syntax je kvôli tomu, že priradenie v tej prvej podmienke nie je ozátvorkované.
Keď už máš nastavené id na tom políčku, tak sa k nemu nemusíš dostávať prostredníctvom formulára, ale môžeš ho získať priamo: var input = document.getElementById("idPriloha"); |
||
MilanJ Profil |
#10 · Zasláno: 3. 2. 2007, 14:08:23
los + Joker
Díky moc, už jsem to pochopil. :) |
||
Časová prodleva: 17 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0