Bonjour!!
Je suis débutant en Jquery et j'ai un problème que je n'arrive pas à régler...
J'ai une page .js qui va chercher des infos dans une base de données:
Ensuite ces données s'affiche dans une liste...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 function read(){ //fade effect $(".content > ul").hide(); $("#loading").fadeIn(); //send the post to ajax.php $.ajax({ type: "GET", url: "ajax.php", data: "action=lire", complete: function(data){ $("#loading").fadeOut(); $(".content > ul").html(data.responseText); $(".content > ul").fadeIn(2000); } }); }
... qui s'affiche sur la page html:
$res = @mysql_query("SELECT id, titre, text FROM jquery ORDER BY id DESC");
while($row = mysql_fetch_array($res)){
$result .= "<li value='".$row['id']."'><strong>".$row['titre']."</strong> -> ".$row['text']."<a href='#'>x</a></li>";
}
echo $result;
Jusque là ok, ça fonctionne.<div class="content">
<h1>Latest Messages</h1>
<div id="loading"><img src="loading.gif" alt="Loading..." /></div>
<ul>
</ul>
</div>
Ensuite, dans mon fichier .js je veux pouvoir éliminer les entrées en cliquant sur le <li> correspondant:
Et là ça ne fonctionne pas...$('ul li').click(function(){
$(this).fadeOut(800);
var value = $(this).attr('value');
$.ajax({
type: "GET",
url: "ajax.php",
data: "action=delete&id="+ value,
complete: function(data){
messageList.html(data.responseText);
read();
}
});
});
J'ai créé une seconde liste en dur dans le HTML et ça fonctionne sans problème.
C'est lorsque la liste est générée en ajax que ça ne marche pas...
Les 2 listes sont pourtant identique, de type:
C'est peut être un détail, mais je bloque...<li value='3'>Du texte...</li>
Quelqu'un aurai tune idée?
Merci de votre aide!
Nicolas.
Partager