| Autor | Zpráva | ||
|---|---|---|---|
| janek007 Profil |
#1 · Zasláno: 13. 4. 2016, 09:24:55
Ahoj,
abych měl hezké url udělal jsem si Jquery funkci na vkládání obsahu s php souborů do definovaného DIV po stisknutí určitého tlačíka v menu. session_start();
require(__DIR__ . "/config.php");
include(__DIR__ . "/inc/header.php"); ?>
<script>
$(document).ready(function(){
var flag = 0;
$(document).on( "click", "a", function() {
flag = 1;
var hodnota = $(this).attr('href').replace("#", "");
$(".article").empty();
$(".article").load("page/" + hodnota + ".php");
});
if (flag == 0) {
$(".article").empty();
$(".article").load("page/recepty.php");
}
});
</script>
<div class="article">
</div>
<p class="pages"><small>Stránka 1 z 2</small> <span>1</span> <a href="#">2</a> <a href="#">»</a></p>
<?php include(__DIR__ . "/inc/footer.php"); ?>Ale teď narážím na problém, že když dám F5, tak mi to skočí na výchozí stránku. Dále pak nějak netuším jak obsluhovat odesílání formulárů, abych byl schopen zpracovat data přes $_POST a zároveň zůstal na aktuální stránce. Zkoušel sem funkci předělat tak, abych si vyčítal hodnotu z url za #, ale to mi vždy načítalo předcházející stránku než na kterou jsem aktuálně kliknul v menu. Lze to nějak takto řešit, nebo jdu na to úplně špatně? |
||
| Petr Ká Profil |
#2 · Zasláno: 13. 4. 2016, 09:36:56
janek007:
Dobré řešení je - udělat web, který bude fungovat bez javascriptu a až pak JS dodělat ;) |
||
| janek007 Profil |
#3 · Zasláno: 13. 4. 2016, 14:32:49
Vzal sem tě za slovo a vyřešil nějaké problémy kvůli kterým sem tam zatáhl tuto část JS. Teď už mi to jede zase jen čistě v php.
Dík |
||
| Radek9 Profil |
#4 · Zasláno: 13. 4. 2016, 14:39:11
janek007:
Pro tu dynamickou změnu obsahu si nastuduj funkci window.history.pushState. Pomocí ní můžeš změnit adresu na stejnou, jakou používá ten PHP script, a k tomu natáhnout obsah ajaxem. Při reloadu nebo odeslání formuláře se použije ta nová adresa, takže zůstaneš tam, kde máš být.
|
||
|
Časová prodleva: 10 let
|
|||
0