Autor | Zpráva | ||
---|---|---|---|
petey Profil |
#1 · Zasláno: 6. 5. 2012, 22:51:00
Ahoj, Dobrý den,
dokázal by mi někdo poradit jak zapsat javascript, aby mi při odeslání formuláře, který filtruje select z DB do stejné stránky - tabulky pod formulářem, zobrazil navíc tlačítko vedle ODESLAT, RESET ?? Tuším, že se bude využívat visibility=hidden. Ale jak to zapsat tomu odkazu? Hádám nějak takhle podobně: <a href="neco.php" style="visibility: hidden" onSubmit="this.style.visibility='visible'">Odkaz</a> |
||
Darker Profil |
#2 · Zasláno: 6. 5. 2012, 23:47:49
Onsubmit je event který musíš dát tomu formuláři. Ten se přece odesílá. Moc jsem nepochopil, co tu píšeš o formulářích co filtrují selecty ale asi chceš toto:
<form [...] onsubmit="this.reset.style.visibility='visible'"> <input type="submit" value="odeslat" /><input type="reset" value="Reset" name="reset" style="visibility: hidden" /> </form> <form [...] onsubmit="document.getElementById('odkaz').style.visibility='visible'"> <input type="submit" value="odeslat" /><a href="reset.php" id="odkaz" style="visibility: hidden"> Resetovat</a> </form> |
||
petey Profil |
#3 · Zasláno: 7. 5. 2012, 12:56:40
Díky za nástin. Pochopil si mě dobře. Nicméně je mi jasné, že onSubmit musí být u formuláře, ale v takovém případě mi tlačítko jen problikne než se stránka stačí načíst s aktuálním filtrem. Dalo by se to tedy nějak upravit, aby se to načetlo při znovunačtení stránky po odeslání formuláře? Zřejmě se bude využívat
<body onLoad ... , že?
|
||
Darker Profil |
#4 · Zasláno: 7. 5. 2012, 13:15:07
Pokud nemáš k dispozici PHP použil bych v tomto případě cookies nebo parametry url (GET nebo #xxx). O všem třem si něco dohledej.
V případě toho křížku za url by to vypadalo takto: <form [...] action="[...]#zobrazreset"> [...]<a href="reset.php" id="odkaz" style="visibility: hidden"> Resetovat</a> </form> <script type="text/javascript"> if(window.location.hash == "zobrazreset") [zobrazit odkaz] </script> |
||
petey Profil |
#5 · Zasláno: 7. 5. 2012, 13:46:33
Díky za cenné příklady! Zkusím to tím posledním příkladem, případně to hodím PHPkem podobně jako u JS s předáním #zobraz za adresou a přes echo s podmínkou.
|
||
Darker Profil |
petey:
„#zobraz za adresou a přes echo s podmínkou.“ To nepůjde, anchor (nebo jak se té blbosti říká) se neodesílá, je to jen taková pomůcka pro vytváření kotev. V tomhle případě musí formulář vypadat takto: <form [...] action="[...]?zobrazreset"> <?php if(isset($_GET["zobrazreset"]) {?> <a href="reset.php" id="odkaz" style="visibility: hidden"> Resetovat</a> <?php }?> <form method="post"> [...] <input type="submit" value="odeslat" name="odeslano" /> <?php if(isset($_POST["odeslano"]) {?> <a href="reset.php" id="odkaz" style="visibility: hidden"> Resetovat</a> <?php }?> </form> |
||
Časová prodleva: 12 let
|
0