Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > jQuery
jQuery Forum d'entraide sur le framework jQuery. Avant de poster : Tutoriels jQuery, FAQ jQuery, Tous les tutoriels JavaScript, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 24/01/2012, 17h55   #1
Invité de passage
 
Inscription : janvier 2011
Messages : 4
Détails du profil
Informations forums :
Inscription : janvier 2011
Messages : 4
Points : 2
Points : 2
Par défaut jquery avec ajax et la methode each()

Salut à tous,
j'ai un problème sur jquery concernant l'utilisation de ajax avec la boucle each() du framwork.voici de code que je vous passe:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<script>
        $(document).ready(function() {
 
 
			$('a.class1').click(function() { 
	          var form_data = { ajax : '1'};
                $.ajax({
                    url: $('a.class1').attr('alt'),
                    type: 'POST',
                    async : false,
                    data: form_data,
                    success: function(msg) {
                                alert($('a.class1').attr('alt'));}
                });
 
                return false;
	        });
 
 
 
 
        });
</script>
voici le code html sur le quel je voudrais appliquer la requete ajax sur chacun des liens suivant.
Code :
1
2
3
4
5
6
<a  class="class1" href="#" alt="aidezmoi_1.com">ce lien1</a>
<a  class="class1" href="#" alt="aidezmoi_2.com">ce lien2</a>
<a  class="class1" href="#" alt="aidezmoi_3.com">ce lien3</a>
<a  class="class1" href="#" alt="aidezmoi_4.com">ce lien4</a>
<a  class="class1" href="#" alt="aidezmoi_5.com">ce lien5</a>
<a  class="class1" href="#" alt="aidezmoi_6.com">ce lien6</a>
mon problème est que cette requete ajax ne fonctionne que pour le premier lien (<a class="class1" href="#" alt="aidezmoi_1.com">ce lien1</a>) et pourtant je veut que la requete se fasse sur tous les liens vers des pages differentes ;ce qui nest pas le cas car elle pointe toutes vers le premier lien.je sais que la methode each() peut s'appliquer dans ce cas mais je cherche et je cherche ca ne marche pas bien.
NB:jai fait exprès de metter les liens sur les attributs alt,cela ne dérange pas.merci à tous
cordialement
guiguiz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2012, 19h41   #2
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 808
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 808
Points : 35 789
Points : 35 789
C'est tout à fait normal
Code :
$('a.class1').click(function(){...}
va bien appeler la fonction anonyme pour chaque lien, mais ensuite
Code :
url: $('a.class1').attr('alt')
récupère l'ensemble de tes liens et la méthode attr() va récupérer la valeur de l'attribut pour le premier élément de la collection, donc toujours le même et non celui de la balise cliquée.
Il faut utiliser this ou $(this) :
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2012, 23h17   #3
Invité de passage
 
Inscription : janvier 2011
Messages : 4
Détails du profil
Informations forums :
Inscription : janvier 2011
Messages : 4
Points : 2
Points : 2
Merci pour ta réponse qui m'aide enfin. Mais il y a un hic : la requête ne marche pas à tous les coups. Des fois elle s'exécute, des fois pas du tout. Comment remédier et qu'est-ce qui peut causer cela ? Merci encore.
guiguiz est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h52.


 
 
 
 
Partenaires

Hébergement Web