Autor | Zpráva | ||
---|---|---|---|
lopik Profil |
#1 · Zasláno: 3. 10. 2018, 21:09:01
Dobrý deň prajem,
mám e-shop, kde mám možnosť platenia platobnou kartou. S tým, že sa mi často stáva, že človek opustí stránku bez toho, aby po vytvorení objednávky zaplatil. Preto sa chcem spýtať, či existuje možnosť spraviť JS alert , ale taky trošku špecifický. Alert by mal vybehnúť vždy vtedy ak chce užívateľ opustiť stránku, ale nesmie vybehnúť, keď dá odoslať formulár, čiže stlačí špecifický button. Dúfam, že som zrozumiteľne vysvetlil, čo potrebujem. Ďakujem |
||
Taps Profil |
#2 · Zasláno: 3. 10. 2018, 21:53:37
|
||
lopik Profil |
#3 · Zasláno: 4. 10. 2018, 18:18:14
áno, niečo takéto myslím, ale s tým, že keď klikne užívateľ na na tlačidlo odoslania formulára, že hláška nevybehne. teda vybehne len vtedy keď chce opustiť stránku inak ako odoslaním formulára. nejaké nápady?
|
||
Radek9 Profil |
#4 · Zasláno: 4. 10. 2018, 19:34:55
lopik:
V případě, že proběhne onsubmit event na formuláři, smaž ten onbeforeunload event. |
||
lopik Profil |
#5 · Zasláno: 4. 10. 2018, 20:56:00
Radek9:
vieš mi prosím poradiť, ako to spraviť? aspoň nejaký ľahký návod, nakoľko v JS sa nevyznám. vďaka |
||
DarkMeni Profil |
#6 · Zasláno: 4. 10. 2018, 22:01:40
1. Dej formuláři atribut id, jestli ho ještě nemá, ať se k němu snadno dostaneš přes javascript.
Přibližně to co říkal Radek9 v podobě kódu: document.getElementById("id-formulare").onsubmit = function(){ window.onbeforeunload = function(){ /* prazdna funkce, prepise tu puvodni */ }; } |
||
Keeehi Profil |
#7 · Zasláno: 5. 10. 2018, 08:23:10
Čistější řešení by bylo přes addEventListener ale tohle by mělo také fungovat.
|
||
lopik Profil |
#8 · Zasláno: 5. 10. 2018, 15:17:52
Takže formuláru som nastavil id="platba"
<form method="POST" action="https://***" id="platba"> <script> window.onbeforeunload = function() { return "Upozornenie, ak nevykonáte koratne platba, objednávka bude zrušená (onbeforeunload)"; } window.onunload = function() { alert("Upozornenie, ak nevykonáte koratne platba, objednávka bude zrušená (onunload)"); } document.getElementById("platba").onsubmit = function(){ window.onbeforeunload = function(){ /* prazdna funkce, prepise tu puvodni */ }; } </script> |
||
Radek9 Profil |
#9 · Zasláno: 5. 10. 2018, 15:59:27
lopik:
Mně to funguje v pohodě: Odkaz |
||
lopik Profil |
#10 · Zasláno: 5. 10. 2018, 16:38:33
Áno, nakoniec, som tam mal jednu chybu, už to ide aj mne. Ale prišiel som na to, ze keď dám na prehliadači tlačidlo späť, tak už hlášku nehádže. ako to môžem rozšíriť o túto možnosť? Ďakujem
|
||
Časová prodleva: 6 let
|
0