Possible Duplicate:
$(this) doesn't work in a function
I'm writing post removing code in jQuery, The removing itself is made via post-request to backeds, after server returns 200, I want to delete this post on client-side.
$('.delete-post').click(function() {
$.post($(this).attr('href'), {}, function(data) {
$(this).closest('.post').remove();
});
return false;
});
However, I've noticed that inside function(data) {...) selector 'this' doesn't work. I need to remove closest to $('.delete-post')
div with class '.post'. How to manage this problem? Thanks!
$(this)
exists in theclick event
butfunction(data) {
is not part of click eventrather callback function
. So save the $(this) in some variable for instancethat
for later use.Try this: