Using objects to make state with AJAX functions as properties
Your setPlacement method returns the "correct" data because whatever d is in your data object you receive from Service.asmx/GetDrugs is compared to be greater than 4. If it is then it will set the tooltip placement of the $('#click') element to bottom, otherwise it will set it to right. You can check it out by sticking this code at the bottom of the page:

alert('this is 3 characters: ' + tooltipManager.placement.setPlacement('asd'));
alert('this is 5 characters: ' + tooltipManager.placement.setPlacement('asdfg'));


All that placement does is it returns the words "left","top","right", or "bottom" depending on what it's set to in the placement object. You can change that object to this and it will still work:

placement: {
    l: 'left',
    t: 'top',
    r: 'right',
    b: 'bottom',
    setPlacement: function (data) {
        if (data.length &gt; 4) {
            return this.b;
        }
        else {
            return this.r;
        }
    }
}


The setPlacement method doesn't actually set anything. What does is your jQuery's tooltip method.

You can change up all of line 48 like this (you also had a typo):

$('#click').on('click', tooltipManager.title);


You can delete the sizer function as I don't see a use for it. Something like that should be a method of the tooltipManager object anyways. On the same subject, since setPlacement doesn't actually set anything, you should probably change it to getPlacement or calcPlacement. It's more semantic and will help other developers that come behind you.

I would personally redo the entire tooltipManager.placement object to show the actual data that would be unknown. As an example, why on Earth would you need a static object to tell you what the number 2 is? Same for the string 'bottom'. tooltipManager.placement.bottom is the same thing as 'bottom'. Here's how I would structure that:

var tooltipManager = {
    setTitle: function () {
        $.ajax({
            type: "POST",
            contentType: "application/json",
            url: "Service.asmx/GetDrugs",
            dataType: "json",
            success: function (data) {
                $('#click').attr('title', data.d)
                .tooltip({
                    trigger: 'click',
                    html: false,
                    placement: tooltipManager.setPlacement(data.d)
                }).click();
            },
            error: function (xhr) {
                console.error('Failed tooltip request: ' + xhr.status);
            }
        });
    },
    setPlacement: function (data) {
        if (data.length &gt; 4) {
            tooltipManager.placement = 'bottom';
            return 'bottom';
        } else {
            tooltipManager.placement = 'right';
            return 'right';
        }
    }
}

$('#click').on('click', tooltipManager.setTitle);


Note: I actually kept the setPlacement method, I just changed it so that it actually sets data. You can access the placement of the tooltip in javascript with tooltipManager.placement if you want. If you intend on having multiple tooltips you can just convert this all into a class. Also, I changed the tooltipManager.title method into tooltipManager.setTitle because it actually sets data.