2011-03-12 4 views
0

J'ai un lien vers un URL (ajax). Ensuite, je veux cacher tout le li.Problème lors de l'utilisation de jquery post

HTML

<li>Product Name <a href="/delete/item_id" class="del">Delete</a></li> 

JQUERY

$(function(){ 
    $(".del").click(function() { 
     var link = $(this).attr('href'); 
     $.post(link, function() { 
      $(this).parent().slideUp(); 
     return false; 
     }); 
     event.preventDefault(); 
    }); 
}); 

Répondre

1

Le this -keyword dans le succès-gestionnaire passé à $ .post ne fait pas référence à l'élément d'ancrage, de sorte que votre code ne fonctionnera pas. Vous pouvez facilement résoudre ce problème en enregistrant une référence à l'élément li en dehors du gestionnaire de succès:

$(function(){ 
    $(".del").click(function() { 
     var link = $(this).attr('href'); 
     var li = $(this).parent(); 
     $.post(link, function() { 
      li.slideUp(); 
     return false; 
     }); 
     event.preventDefault(); 
    }); 
});