.on('click'): Preventdefault() fonctionne pas pour tous les liens
Bonjour,
J'ai un problème qui me rend fou dans mon code.
J'ai une page index qui contient la mise en page. A l'aide d'un .load() je charge une page php/jquery qui va s'occuper de verifier si l'utilisateur est loggé ainsi que lui renvoyer la page qu'il veut avec un .on('click').
J'ai défini donc que tous mes liens de la classe "links" doivent être intercepter. Le problème c'est que pour mon lien logout tout fonctionne mais par contre pour un autre liens sur une page lorsque je click dessus j'ai l'erreur:
Citation:
Not Found
The requested URL /OrderNow/store was not found on this server.
Comme si mon .preventDefault(); ne fonctionnais pas pour ce lien...
Index.html :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
| <!doctype html>
<html class="no-js" lang="en">
<head>
<meta charset="utf-8" />
<!--meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0" /> -->
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" />
<!--meta name="viewport" content="width=device-width, initial-scale=1.0" /> -->
<title>OrderNow beta 1.0</title>
<link rel="stylesheet" href="css/foundation.css" />
<link rel="stylesheet" href="css/styles.css" />
<link rel="stylesheet" href="css/foundation-icons.css" />
<link rel="stylesheet" href="css/foundation-icons.ttf" />
<script src="js/vendor/modernizr.js"></script>
</head>
<body>
<div class="off-canvas-wrap" data-offcanvas>
<div class="inner-wrap">
<nav class="tab-bar">
<section class="left-small">
<a class="left-off-canvas-toggle menu-icon" href="#"><span></span></a>
</section>
<section class="middle tab-bar-section">
<img src="img/logo1.png" alt="OrderNow" class="logo" /> <!-- LOGO __ -->
<a class="link-panier" href="#"><div id="panier"></div></a> <!-- PANIER DANS TOP BAR ___ -->
</section>
</nav>
<!-- MENU ____________________________________________________________________ -->
<div id="main-menu">
</div>
<!-- /MENU ___________________________________________________________________ -->
<section class="main-section">
<!-- MAIN CONTAINER __________________________________________________________ -->
<div class="page-container">
</div>
<!-- /MAIN CONTAINER _________________________________________________________ -->
</section>
<a class="exit-off-canvas"></a>
</div>
</div>
<script src="js/vendor/jquery.js"></script>
<script src="js/foundation.min.js"></script>
<script>
$( document ).ready(function() {
$(".page-script").load("../OrderNow/globals/page-loader2.php"); /* Script de gestion de page */
$("#main-menu").load("../OrderNow/modules/menu/menu.html"); /* INCLUDE MENU AJAX */
$("#panier").load("../OrderNow/modules/checkout/panier.html"); /* INCLUDE PANIER AJAX */
$(document).foundation();
});
</script>
<script class="page-script"></script>
</body>
</html> |
Mon page loader .php
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
| <?php session_start();
$get_page =$_GET['page'];
if (isset($_SESSION["Id"])) { //si il existe une session
if ($_SESSION['is_localised'] != true) { //si l'utilisateur n'a pas encore été utilisé
require_once $_SERVER['DOCUMENT_ROOT']."/OrderNow/globals/localise/localise.js"; // on localise l'utilisateur
}
$is_logged = true;
}
else { //sinon l'utilisateur n'est pas logué
$is_logged = false;
}
if ($_GET['page'] == "logout") {
$is_logged = false;
session_destroy();
}
?>
<script>
var is_logged = "<?php echo $is_logged; ?>";
var get_page = "<?php echo $get_page; ?>";
var first_login = true;
$(document).ready(function() {
$('a.links').on('click', function(e) {
e.preventDefault();
var first_login = false;
var page_href = $(this).attr("href");
if (page_href == "store"){
$(".page-container").load("../OrderNow/modules/store/store.html");
}
else if (page_href == "logout"){
$(".page-container").load("../OrderNow/globals/page-loader2.php?page=logout");
}
});
if ((is_logged == true) && (first_login == true)){
$(".page-container").load("../OrderNow/modules/store/storelist.html");
}
else if (is_logged == false){
$(".page-container").load("../OrderNow/modules/login/login.html");
}
});
</script> |
Ma page ou mon lien ne fonctionne pas
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| <div class="form-box">
<h1>Magasins</h1>
<div class="row collapse">
<div class="small-10 columns">
<input type="text" placeholder="Rechercher">
</div>
<div class="small-2 columns">
<a href="#" class="button postfix"><i class="ico-big fi-magnifying-glass"></i></a>
</div>
</div>
<h3>Proche de vous</h3>
<hr>
<div class="shop-list">
<?php
session_start();
require_once $_SERVER['DOCUMENT_ROOT']."/OrderNow/globals/db-connect.php";//connection a la base de donnée
//on recupère le nom et l'adresse de tous les shops disponibles
$query = mysqli_query($link, "SELECT nom, ville, npa, adresse FROM Stores LIMIT 0,5"); //on recupère les 5 magasins les plus proches
while ($data = mysqli_fetch_assoc($query)) { //!//FONCTION A REMPLACER PAR DU JSON POUR ETRE PROPRE! ?>
<div class="row">
<div class="small-8 columns"><a class="links shop-links" href="store"><?php print $data["nom"]; ?></a>
</div>
<div class="small-4 columns"><a class="links city-links" href="#"><?php print $data["ville"]; ?></a>
</div>
<hr class="hr-list">
</div>
<?php
$nb++;
}
?>
</div><!-- liste des shops proches -->
</div> |
Ma page contenant les liens des menus dont le lien déconnecter qui fonctionne très bien.
Code:
1 2 3 4 5 6 7 8 9 10 11
| <!-- MAIN MENU -->
<aside class="left-off-canvas-menu">
<ul class="off-canvas-list">
<li class="li-menu"><label><a class="links lnk-menu" href="logout">Se déconnecter</a></label></li> <!-- titre au sommet -->
<li class="li-menu"><a href="#"><i class="ico-menu fi-foundation"></i>Maps</a></li>
<li class="li-menu"><a href="#"><i class="ico-menu fi-torso"></i>Mon compte</a></li>
<li class="li-menu"><a href="#"><i class="ico-menu fi-clock"></i>Historiques</a></li>
<li class="li-menu"><a href="#"><i class="ico-menu fi-star"></i>Promotions</a></li>
<li class="li-menu"><a href="#"><i class="ico-menu fi-info"></i>A propos</a></li>
</ul>
</aside> |
Merci d'avance pour votre aide.
Salutations