使用jquery方法的Ajax请求

I have a doubt, I use Jquery to load dynamic wall posts of people who follow me. Now since Jquery dosent work on dynamic content in the tradition click method I use on method for the response.If i dont trigger a Jquery method but do other things it works. I want to know how to launch Ajax method. My Code:

$('body').on('click','.likebutton', $.ajax({
    method:"POST",
    url:"../assets/backend/likepost/index.php",
    data:"postid="+$('.likebutton').attr('id'),
    success:function(response) {
        $(this).find(".liketext").html("<p class='liketext'><span class='glyphicon glyphicon-ok'></span> You like this</p>");
    }

Any improvment to the code would be greatly appreciated. Thnx

Use following format:

$('body').on('click','.likebutton', function(){
    var that = this;
    /*
        place code of other processing
    */
    $.ajax({
        method:"POST",
        url:"../assets/backend/likepost/index.php",
        data:"postid="+$(that).attr('id'),
        success:function(response) {
            $(that).find(".liketext").html("<p class='liketext'><span class='glyphicon glyphicon-ok'></span> You like this</p>");
        }
    });
}

You need to wrap ajax function call in an anonymous functions.

Use

$('body').on('click', '.likebutton', function() {
    //Store the reference in a variable
    var _this = $(this);
    $.ajax({
        method: "POST",
        url: "../assets/backend/likepost/index.php",
        data: "postid=" + this.id, //fetch id using this
        success: function(response) {
            //Use the refrence to set html
            _this.find(".liketext").html("<p class='liketext'><span class='glyphicon glyphicon-ok'></span> You like this</p>");
        }
    });
});