Problème javascript/ajax
seizetheday
-
seizetheday -
seizetheday -
Bonjour,
Je suis début en tout ce qui est javascript/ajax, j'espère que vous pouvez me donner un coup de main.
Voici mon problème, J'ai mis en place ce code :
A chaque fois que je clique sur un de mes liens, j'ai donc bien ma nouvelle page qui s'affiche dans mon div contenu. Cependant j'aimerais que ça ne s'applique pas à mon menu, de façon à ce que si les gens veulent aller à la page d'accueil celle ci s'ouvre dans un page complète et non dans ma div.
Merci d'avance
Je suis début en tout ce qui est javascript/ajax, j'espère que vous pouvez me donner un coup de main.
Voici mon problème, J'ai mis en place ce code :
<script type="text/javascript">
$(document).ready(function(){ // le document est chargé
$("a").click(function(){ // on selectionne tous les liens et on d?finit une action quand on clique dessus
page=($(this).attr("href")); // on recuperer l' adresse du lien
$.ajax({ // ajax
url: page, // url de la page ? charger
cache: false, // pas de mise en cache
success:function(html){ // si la requêté est un succès
afficher(html); // on execute la fonction afficher(donnees)
},
error:function(XMLHttpRequest, textStatus, errorThrows){ // erreur durant la requete
}
});
return false; // on desactive le lien
});
});
function afficher(donnees){ // pour remplacer le contenu du div contenu
$("#contenu").empty(); // on vide le div
$("#contenu").append(donnees); // on met dans le div le r?sultat de la requete ajax
}
</script>
A chaque fois que je clique sur un de mes liens, j'ai donc bien ma nouvelle page qui s'affiche dans mon div contenu. Cependant j'aimerais que ça ne s'applique pas à mon menu, de façon à ce que si les gens veulent aller à la page d'accueil celle ci s'ouvre dans un page complète et non dans ma div.
Merci d'avance
2 réponses
-
Salut,
Une solution possible est d'appliquer ton traitement ajax à tous les liens sauf ceux du menu que tu pourrais identifier en leurs ajoutant une classe.
Par exemple sur chaque lien de ton menu on ajoute la classe menuitem :<nav> <a href="/accueil" class="menuitem">Accueil</accueil> <a href="/page1" class="menuitem">Page 1</accueil> <!-- ... etc ... --> </nav>
Puis dans ton code javascript on applique le traitement à tous les liens sauf ceux du menu :$(document).ready(function(){ // le document est chargé $('a[class!="menuitem"]').click(function(){ // suite de ton code
Bonne journée -