Au clique, ca ne retourn pas l'id

Mammouth du PHP | 725 Messages

03 sept. 2013, 08:08

Bonjour,

Je recupere des donnees via json, et quand je clique sur un element il ne retourn pas son ID, par contre si cet element est sur la page meme, ca marche:

Les donnees recuperees par json:
<div style="overflow:hidden; width:380px; border-width: 2px; border-style: solid; border-radius : 3px 3px 3px 3px; text-align: center; margin: auto; background-color:#E7EBF2; border-color: #003179;">

<div style="width: 300px; float:left;" />
Nouveau Message
<br />
<a style="cursor: pointer;" class="closeIt" id="newPMe">
Fermer
</a>
</div>

<div style="width:70px; height:70px; float:left;">
<img src="Images/Icons/newPM.png" />
</div>

</div>
de la facon suivante:

Code : Tout sélectionner

{"pmMsg":CONTENU DU MESSAGE EN HAUT}
voici le code de fermeture:

[javascript]
$('.closeIt').click(function(){
var clicked = $(this).attr('id');
console.log(clicked);
$('.'+clicked).slideUp(1000);
});

// et le code pour afficher le message:

if(data.newPM == 'newPM'){
$('.newPMe').html(data.pmMsg).slideDown(2000);
}
[/javascript]

meme le console.log ca ne donne rien (VIDE).

quand je teste le code tout seul sur une page independante ca marche, mais quand je le recupere avec json, ca marche pas

Merci a vous

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

03 sept. 2013, 11:15

Salut,

D'où vient data ?

@+
Il en faut peu pour être heureux ......

Mammouth du PHP | 725 Messages

03 sept. 2013, 11:18

c'est du code ajax:

[javascript]
$.ajax({
type: "POST",
url: "Admins/minutesrefresh.php",
//data: dataString,
dataType: "json",
success: function(data) {


}
[/javascript]

mais ce n'est pas le code ou je rencontre ce probleme, c'est que au clique il ne retourne rien a la console

Mammouth du PHP | 725 Messages

03 sept. 2013, 15:26

ma question est: si on recupere un element par json, par exemple:

<a class="closeit" id="close1">click</a>

on l'affiche sur la page principale, du meme code en haut, et on applique:

[javascript]
$('.closeIt').click(function(){
var clicked = $(this).attr('id');
console.log(clicked);
$('.'+clicked).slideUp(1000);
});
[/javascript]

l'element ne retourne rien, par contre si on prend le meme code,

<a class="closeit" id="close1">click</a>

et on le met sur une page directement sans le recuperer par json, le code jquery marche tres bien, on recupere l'ID

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

04 sept. 2013, 14:06

Poste le code JS complet la c'est que des bon sans queue ni tête c'est incompréhensible ;)

@+
Il en faut peu pour être heureux ......

Mammouth du PHP | 725 Messages

05 sept. 2013, 09:07

moogli, c'est tout le code que j'ai:

on recupere les donnees d'une autre page (test.php) par json:

Code : Tout sélectionner

<a class="closeIt" id="close1">click</a>
et dans la page principale (index.php), on traite l'evenement:

[javascript]
$('.closeIt').click(function(){
var clicked = $(this).attr('id');
console.log(clicked);
$('.'+clicked).slideUp(1000);
});
[/javascript]

si vous mettez les 2 code dans la meme page:

[javascript]
<head>

/ inclure la js lib
// etc
$('.closeIt').click(function(){
var clicked = $(this).attr('id');
console.log(clicked);
$('.'+clicked).slideUp(1000);
};
</head>

<a class="closeIt" id="close1">click</a>

[/javascript]

le code va retourner l'id, mais si on le met sur 2 pages avec traiement ajax, le code ne va rien retourner