Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem onclick refresh + target="_top"

Dobrý den,

Potřebuji radu, mám ve formu input type="submit" a potřebuju aby se po kliknutí nejen odeslal form ale zároveň se refreshnula stránka ve které je form vložený přes iframe (target="_top").

Jestli má někdo nějaké nápady budu vděčný.

Děkuji, Swix

Předmět Autor Datum
Mmmmm. A pracovat se má s daty z toho formu (poslanými), že. Z mého laického pohledu bych řekl, že… nový
Flash_Gordon 28.07.2012 16:03
Flash_Gordon
S daty se bude pracovat na stránce kde je form - zapíší se do db - na původní stránce se jen zobrazí… nový
Swix 28.07.2012 20:47
Swix
Odeslat data přes Ajax (tak jak navrhuje Squad Leader) a počkat na odpověď od serveru. Až pak Javasc… nový
hynajs 28.07.2012 19:09
hynajs
Ešte to môžeš spraviť tak, že po spracovaní formulára v iframe vygeneruješ na serveri JavaScript, kt… nový
los 28.07.2012 21:05
los
Nenašel jsem žádný jiný způsob jak obnovovat jen "kus" stránky aby ostatní zůstalo nedotčené - přes… nový
Swix 28.07.2012 21:37
Swix
Cez innerHTML alebo priamou manipuláciou DOM obnovíš kus stránky ako nič a ostatné zostane nedotknut… nový
los 28.07.2012 21:50
los
Chtěl jsem udělat něco jako vlastní shoutbox, vlastně jsem ho udělal i autorefresh... jediné co mě š… poslední
Swix 28.07.2012 22:16
Swix

Mmmmm. A pracovat se má s daty z toho formu (poslanými), že.

Z mého laického pohledu bych řekl, že pro tento případ je celá aplikace neštastně navržená.
V každém případě řešit by to šlo odesláním přes Ajax a po odeslání dat refreshnout libovolnou stránku(frame).

//Editace

ještě jsem vygooglil na toto téma neodzkoušenou berličku:

onsubmit="setTimeout('parent.location.reload()',700); return true;"

Ovšem nevýhoda je jasná. Tím je nespolehlivost. Lze říci, že každý požadavek se vyřizuje jinou dobu. Důvodů je řada (rychlost internetového spojení, vytíženost serveru....) . V extrémním případě se refreshne stránka ještě dřív než se zpracují odeslaná data :-p

Odeslat data přes Ajax (tak jak navrhuje Squad Leader) a počkat na odpověď od serveru.
Až pak Javascriptem refreshnout stránku. Anebo jen obnovit část stránky, která se mění v závislosti na odeslaných datech, třeba pomocí

load

Ešte to môžeš spraviť tak, že po spracovaní formulára v iframe vygeneruješ na serveri JavaScript, ktorý obnoví rodičovskú stránku.

Osobne by som sa v prvom rade čo najskôr zbavil toho iframe-u. Iframe-y síce IMHO ešte zažijú svoj comeback, ale ešte ten čas nenastal.

Zpět do poradny Odpovědět na původní otázku Nahoru