Bonjour
J'ai repris le précédent tutoriel et je n'est donc que des page PHP et quand je clique j'ai une double inclusion de ma page a partir du lien :

<a href="ajouterModel">Ajouter Modele</a>

et du code JQ suivant :

$( "a.boutton-choix").button();
            $( "a.boutton-choix").click(function(){
                var href = $(this).attr('href');
                $('div.bloc').load(href);
                return false;
            });

j'ai légèrement du mal a saisir le fonctionnement du .htaccess car je ne voie pas comment distingué une requête ajax d'un chargement de page "normal".

Ps: et t'il possible de modifier l'url après un lien en ajax?

4 réponses


il ne faut pas que tu vide la div avant un load avec empty ?

Crakjie
Auteur

Non se n'est pas a se niveau la car j'ai toute ma page dans ma div

exemple :

<div class="conteneur">
    <div class="bloc" provenance="contenu/choix.php">
        <meta content="text/html; charset=UTF8" http-equiv="Content-Type">
        <meta content="width=device-width" name="viewport">
        <link href="icone.png" rel="apple-touch-icon">
        <title>Consert'eau</title>
        <link href="style.css" type="text/css" rel="stylesheet">
        <link rel="stylesheet" href="css/overcast/jquery-ui-1.8.13.custom.css" type="text/css">
        <div class="conteneur">

donc on voie bien que la page et recharger dans l'autre page.
J'aurais aimer qu'ajax recharge sans passé par le .htaccess :s

Crakjie
Auteur

J'ai vraiment du mal a comprendre , quand j'écrit

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !^.*index.php$ 
RewriteCond %{REQUEST_FILENAME} -f 
RewriteRule ^([a-zA-Z0-9\-]*).([php|html])$ /index.php?p=$1

Pour avoir des .quelquechose comme dans le tutoriel mais quand je met localhost.../monDossier/mapage.php
il me dit qu'il ne la trouve pas , se qui veux dire qu'il ne fait meme pas la réécriture :(

Il y a plus simple, tu extrais de ta page qui a été chargé en ajax la div que tu as besoin à travers une ligne de code en jquery:

var breadcrumb = $(data).find("#vol_nom").html();

et ensuite tu fais un append de ce que tu as récupérer.

$("#vol_nom").fadeOut(600, function(){
          var breadcrumb = $(data).find("#vol_nom").html();
          $("#vol_nom").empty();
          $("#vol_nom").append(breadcrumb);
          $("#vol_nom").fadeIn(700);
});

N'hésites pas si tu as d'autres questions