Autor Zpráva
Tomashekk
Profil
<script> alert('<? echo $value; ?>');javascript:self.history.back();</script>
toto když provedu a příjde na to, že se mi spustí tento alert, tak sice mne to vrátí zpět, ale všechny textarea jsou prázdné, tudíž to musím vyplňovat zase vše znovu
joe
Profil
To je normální. Snad jediná chytrá Opera (+1) to nechá vyplněné. Ostatní prohlížeče stránku znovu načtou (pravděpodobně z cache) a hodnoty nevyplní.
Chamurappi
Profil
Reaguji na joa:
zase ten zvláštní dojem výjimečnosti? :-)
Všechny prohlížeče (včetně třeba Exploreru 5) umějí při návratu zpět zachovat obsah formulářů a ve všech existují situace, kdy to nefunguje spolehlivě. Záleží na více faktorech (někdy i na proxy serveru).


Reaguji na Tomashkka:
Prosím o odkaz na živou ukázku. Z desítek jiných dotazů, které tu pokládáš, usuzuji, že máš na webu všelijaké psí kusy a že nějaký ten psí kus může narušovat pokusy prohlížeče o lepší obnovení předchozí stránky.
Tomashekk
Profil
Chamurappi:
Usuzujete správně :)

Odkaz - mělo by to vyhodit alert vždy když nevyplníte buď všechna povinná pole a nebo něco vyplníte špatně
toto mám jakoby testovací web - jelikož dělám dva weby najednou, takže zde to jakoby testuju a až to bude hotové, tak zaměním jen vzhled
_es
Profil
Tomashekk:
Treba využiť nie udalosť onclick vstupného políčka, ale udalosť onsubmit formulára.
Tomashekk
Profil
_es:
neee, to co Vám vyskočí při onclick je jen informační, pak Vám to zahlásí i že jste nevyplňil všechna pole, apod.. a to já teď řeším
joe
Profil
Chamurappi:
:-) Tak já nevím, ale jen konstatuju skutečnost, jak se to děje u mě (a nejen u mě). Žádný kromě "mého" prohlížeče to prostě u mě neumí...

Je to naprosto normální chování, které umí jen Opera! Nemyslím si, že to píšeš správně. Schválně si to vyzkoušej, jdi na jakýkoli formulář v Opeře, vyplň ho, do adresního řádku dej jinou adresu a vrať se, pole jsou pořád vyplněná. Jak toho teda docílit ve FireFoxu? V IE? Těším se na nastavení :) A i kdyby to dokázaly, ve výchozím nastavení to není...
_es
Profil
joe:
Je to naprosto normální chování, které umí jen Opera! Nemyslím si, že to píšeš správně. Schválně si to vyzkoušej, jdi na jakýkoli formulář v Opeře, vyplň ho, do adresního řádku dej jinou adresu a vrať se, pole jsou pořád vyplněná. Jak toho teda docílit ve FireFoxu?
Úplne rovnako, vyskúšaj si to, napríklad aj na priamo na tejto stránke, ktorú teraz čítaš.

Tomashekk:
neee, to co Vám vyskočí při onclick je jen informační, pak Vám to zahlásí i že jste nevyplňil všechna pole, apod.. a to já teď řeším
Funkcia v onclick ti vracia hodnotu, ktorá stanovuje, či sa má alebo nemá akcia priradená k tlačítku vykonať.
No niektoré prehliadače ešte predtým formulár odošlú.
Prečo nespravíš tak, ako som ti radil, teda nenahradíš tie udalosti a nevyskúšaš, čo to spraví?
Tomashekk
Profil
_es:
udělal jsem to, takhle je to lepší, ale nefunguje to.. celý formulář spracovávám v PHP skriptu, nikoli JS (jelikož neumím JS)
Chamurappi
Profil
Reaguji na joa:
Jak toho teda docílit ve FireFoxu? V IE? Těším se na nastavení :)
Teď jsem napsal tenhle příspěvek v Exploreru. Přecházím na jinou stránku… vracím se zpět. Příspěvek tu mám. Při výchozím nastavení.

Ve Firefoxu (tuším od verze 1.5) funguje cestování v historii takřka stejně jako v Opeře — pokud k tomu není pádný důvod, nesahá se ani do keše pro zdrojáky, nic se neparsuje, jen se vyloví z paměti původní DOM. Pak jsou v původním stavu nejen formuláře, ale i všechno ostatní (pozice skriptem přesunutých <div>ů apod.). Ve všech prohlížečích jde přirozené chování návratu zpět něčím nabourat.
_es
Profil
Tomashekk:
udělal jsem to,
Nie, neurobil, prečítaj si znovu poriadne [#5].
Tomashekk
Profil
_es:
jak to myslíte?
_es
Profil
Tomashekk:
jak to myslíte?
Presne tak, ako som to napísal: Treba využiť nie udalosť onclick vstupného políčka, ale udalosť onsubmit formulára.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: