faire de l'ajax avec jquery ?

x@v
Mammouth du PHP | 570 Messages

24 mars 2009, 17:30

Bonjour,
j'ai un menu et je voudrai insérer un bout de code dans la balise #contenuPage
L'alerte fonctionne bien, mais comment insérer la page accueil.php dans #contenuPage ?

Code : Tout sélectionner

$('ul#menu li a img').click( function() { $.ajax({ type: "GET", url: "accueil.php", cache: false, data: "name=John&location=Boston", success: function(t){ alert( "Data Saved: " + t); //$("#contenuPage").append(responseText); } }); });

Merci

Eléphant du PHP | 141 Messages

24 mars 2009, 18:10

En faisant
$("#contenuPage").html(t);
?

x@v
Mammouth du PHP | 570 Messages

24 mars 2009, 18:27

oui j'ai aussi ajouter un return false pour annuler le click, et sa fonctionne.
Par contre comment passe t-ont habituellement une valeur en get ?

Eléphant du PHP | 141 Messages

24 mars 2009, 18:37

Dans les paramètre de ton ajax, tu as
type: "GET",
url: "accueil.php",
data: "name=John&location=Boston",
ce qui équivaut à un appel comme ceci : accueil.php?name=John&location=Boston
En gros, dans le type, tu spécifie le type de passage de paramètres (généralement GET ou POST)
Ensuite tu liste tes paramètres dans data comme si tu les passait à l'url, sauf que c'est jquery qui s'occupe de les envoyer selon le type défini.

x@v
Mammouth du PHP | 570 Messages

24 mars 2009, 18:45

oui en faite je parlais de récupérer les parmètres de get pour les passer à la requetes :

Code : Tout sélectionner

$('ul#menu li a img').click( function() { var t=$(this).attr("id"); $("#contenuPage").fadeTo(500, 0); $.ajax({ type: "GET", url: "accueil.php", cache: false, data: "page="+t, success: function(t){ $("#contenuPage") .stop() .fadeTo(1500, 1) .html(t); } }); return false; });
je récupère l'id du lien cliquer et je le pase en parmèrtre

Code : Tout sélectionner

<ul id="menu"> <li> <a href="?page=1" title="lien1"> <span class="lienTexte">page 1</span> <img src="img/bouton1.png" alt="image absente" class="boutonImage" id="1" /> </a> </li> <li> <a href="?page=2" title="lien1"> <span class="lienTexte">page 2</span> <img src="img/bouton1.png" alt="image absente" class="boutonImage" id="2" /> </a> </li> <li> <a href="?page=3" title="lien1"> <span class="lienTexte">page 3</span> <img src="img/bouton1.png" alt="image absente" class="boutonImage" id="3" /> </a> </li> <li> <a href="?page=4" title="lien1"> <span class="lienTexte">page 4</span> <img src="img/bouton1.png" alt="image absente" class="boutonImage" id="4" /> </a> </li> </ul>
, ce qui fonctionne mais bon, ça m'oblige à marqué des id dans mes images, dans ce contecxte pas très élégants :

var t=$(this).attr("id");

Eléphant du PHP | 141 Messages

24 mars 2009, 18:54

De mémoire tu dois pouvoir faire un this.url en JS pour récupérer la chaine de l'attribut href quand tu as cliquer sur un lien.
par contre il faudrait que tu sois dans la fonction click de la balise a
$('ul#menu li a').click( function() {
//...
}

x@v
Mammouth du PHP | 570 Messages

24 mars 2009, 19:23

comme cela ?

Code : Tout sélectionner

$('ul#menu li a').click( function() { //var t=$(this).attr("id"); var t=$(this).attr(); console.log(t);
ça ne me renvoir rien ?

edit:
autant pour moi
var t=$(this).attr('href');
mais cela me renvoie :
?page=1
Faut en suite faire un traitement sur la chaine...
Mais bon il n'y a pas plus dynamique ?

Eléphant du PHP | 141 Messages

24 mars 2009, 19:57

Euh non...
C'est juste un Split() là qu'il faut faire !

x@v
Mammouth du PHP | 570 Messages

25 mars 2009, 01:49

j'ai du placer des id dans les liens, mais c'est pas valide d'avoir des nombres ?
http://www.6tnline.com/serge/introduction.php

Eléphant du PHP | 141 Messages

25 mars 2009, 09:21

Code : Tout sélectionner

var url = this.url.Split("="); // On coupe la chaine au niveau du = var id = url[1]; // On récupère la seconde partie du tableau résultat

x@v
Mammouth du PHP | 570 Messages

25 mars 2009, 13:13

Dans la page php :
substr('?page=tonId', 6); cela me renverra "monId"

j'ai vachement de mal avec le javascript, ont ne peux même pas connaître le protoype de la méthode spilt() ?

Eléphant du PHP | 141 Messages

25 mars 2009, 13:16

ont ne peux même pas connaître le protoype de la méthode spilt() ?
Un petit coup de Google et : http://www.toutjavascript.com/reference ... hp?iref=45

x@v
Mammouth du PHP | 570 Messages

25 mars 2009, 13:30

j'ai ajouter ma contribution, hihi
http://docs.jquery.com/Split