Autor | Zpráva | ||
---|---|---|---|
Reg Profil |
#1 · Zasláno: 27. 10. 2006, 13:35:43
Dobrý den. JS vůbec nepoužívám ale teď by se mi hodila taková drobnost ale vůbec nevim jak na to. Potřebuju totiž udělat aby se to co je v jediném inputu po odeslání formuláře smazalo. Dík.
|
||
DJ Miky Profil |
#2 · Zasláno: 27. 10. 2006, 13:38:16
<form onsubmit="document.getElementById('policko').value=''">
<input type="text" id="policko" /> </form> BTW, není to jedno, když odeslání formuláře způsobí načtení stránky? (ať už jiné nebo té stejné) |
||
j_hajsl Profil |
#3 · Zasláno: 27. 10. 2006, 13:56:50
ale tohle ti pak neodešle ani to vyplněný políčka, před odesláním se smaže ....
|
||
BaTeCzKo Profil |
#4 · Zasláno: 27. 10. 2006, 13:58:58
použij setTimeOut();
|
||
Reg Profil |
#5 · Zasláno: 27. 10. 2006, 13:59:24
No jesli to nic neodešle tak je to na nic, nebyla by verze kerá to smaže až potom?
A mám tam něco ve stylu <form target="iframe">, proto se ta stránka nereloadne. |
||
Reg Profil |
#6 · Zasláno: 27. 10. 2006, 14:04:12
rád použiju setTimeOut(); ale nevim jak :)
|
||
los Profil * |
#7 · Zasláno: 27. 10. 2006, 14:09:42
A čo tak dať tomu ifrejmu obsluhu udalosti load, ktorá zavolá metódu reset formulára?
|
||
Reg Profil |
#8 · Zasláno: 27. 10. 2006, 14:17:19
To ne, potřebuju aby se to políčko smazalo jenom když tam někdo něco pošle jinak ne protože bude mít ta stránka uvnitř refresh.
|
||
los Profil * |
#9 · Zasláno: 27. 10. 2006, 14:21:45
Tak by šlo v onsubmit nastaviť nejaký príznak, že treba vymazať obsah formulára a v onload ifrejmu vymazať obsah a príznak vymazať (prípadne v onsubmit zavesiť obsluhu udalosti na onload a v tej obsluhe ju potom odvesiť).
|
||
Reg Profil |
#10 · Zasláno: 27. 10. 2006, 14:27:42
a co takle žeby to na onsubmit nejdřív submitovalo javascriptově a hned potom smázlo. to by nešlo?
|
||
Joker Profil |
#11 · Zasláno: 27. 10. 2006, 14:31:41
Určitě to onsubmit() políčka smaže před odesláním formuláře? Pokud ano, tak by byla možnost nedávat tam opravdický submit, ale simulovat ho tlačítkem plus javascriptem:
<form id="formular"> <input name="policko" type="text" /> <button onclick="document.formular.submit(); document.getElementById('policko').value='';">Odeslat</button> </form> poznámka: document.getElementById('policko').value=''; - to před středníkem jsou dva apostrofy, ne jedna uvozovka! Jednoduše nejdřív udělám javascriptem ten submit a potom vymažu to políčko. Nevýhoda tohoto je, že bez javascriptu nepůjde ten formulář odeslat. Možná by to šlo řešit nějak takhle: <button id="cudlik1" onclick="document.formular.submit(); document.getElementById('policko').value='';" style="display:none">Odeslat</button> <input id="cudlik2" type="submit" value="odeslat" /> <script type="text/javascript"> if(document.getElementById){ cudl1 = document.getElementById("cudlik1"); cudl2 = document.getElementById("cudlik2"); if(cudl1 && cudl1.style && cudl2 && cudl2.style){ cudl1.style.display = "block"; cudl2.style.display = "none"; } } </script> |
||
Reg Profil |
#12 · Zasláno: 27. 10. 2006, 14:35:28
to má ale háček že chci aby to fungovalo především když odesílám entrem...
|
||
Joker Profil |
#13 · Zasláno: 27. 10. 2006, 14:36:31
a co takle žeby to na onsubmit nejdřív submitovalo javascriptově a hned potom smázlo. to by nešlo?
To se obávám, že ten javascriptový submit by vyvolal opět událost onsubmit, čímž by se to celé zacyklilo. Leda by se nastavoval nějaký příznak a v onsubmit by bylo něco jako if(uzBylSubmit) return(); Ale i tak si myslím, že pokud by se v onsubmit volal další submit, tak by se formulář odeslal dvakrát. Možno vyzkoušet. |
||
los Profil * |
#14 · Zasláno: 27. 10. 2006, 14:45:57
a co takle žeby to na onsubmit nejdřív submitovalo javascriptově a hned potom smázlo. to by nešlo?
To by šlo. <form action="" target="iframe" onsubmit="this.submit();this.policko.value='';return false;"> |
||
Reg Profil |
#15 · Zasláno: 27. 10. 2006, 14:47:02 · Upravil/a: Reg
Ještě mě napadlo udělat eště jeden input (hidden) a do toho by se na onsubmit přendalo to co bylo v tom prvnim a pak se ten první vymazal ale nějak mi to nefunguje. mám to dobře?
onsubmit="document.getElementById('altttext').value=document.getElemen tById('text').value; document.getElementById('text').value=''" |
||
Reg Profil |
#16 · Zasláno: 27. 10. 2006, 14:50:16
los díky mockrát, funguje to bezchybně! Asi díky tomu return false, což nevim co znamená takže bych to sám nidy nevymyslel. ;)
|
||
souki Profil |
#17 · Zasláno: 27. 10. 2006, 14:51:10
Reg
až na tu mezeru v getElemen tById asi máš |
||
Reg Profil |
#18 · Zasláno: 27. 10. 2006, 14:52:35
ta mezera tam neni to tam dělá jakpsatweb a nevim proč.
|
||
souki Profil |
#19 · Zasláno: 27. 10. 2006, 14:53:59
Reg
IMHO kvůli zalamování dlouhých slov... ale asi by to mělo fungovat.. hlásí ti to něco? |
||
Reg Profil |
#20 · Zasláno: 27. 10. 2006, 14:55:28
nemaže to ten text ale už to je vyřešený.
|
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0