Html и javascript получение ответа до загрузки страницы?
Я бы убрал "onload", а в скрипте внизу вместо:document.addEventListener('DOMContentLoaded', function () {
    function getlike(id) {
        var like = $('#like_' + id);
        // ...
    }
});
вставил что-то типа:$('span[id^="like_"]').each(function(index, like) {
    var id = like.id;
    // ...
});
P.S. А по-хорошему, это все надо получать с сервера одним запросом.
У вас в любом случае не будут показываться лайки, пока вы не загрузите jquery.
Поэтому, на момент выдачи html в браузер, у вас уже должны быть в вашем span данные с количеством лайков. 
Как вариант, можете попробовать написать небольшой скрипт отправки и получения запроса без jquery на чистом javascript (https://learn.javascript.ru/ajax-xmlhttprequest в помощь) и загрузить его вверху страницы. 
Кроме того, зачем вам в атрибутах вешать обработчики событий?
Повесьте лучше обработчики с помощью конструкции $('#myid').on('click', listener).
В текущей реализации, должно было бы быть как-то так:
$(document).ready(function() {
/** начнёт работу тогда, когда будет готов DOM, за исключением картинок **/
            var id =  item.ID, // уж не знаю откуда вы берете этот item.ID
            $.ajax({
                type: 'POST',
                url: '/api/values/Getlike/' + id,
                success: function (data) {
                    $('#like_' + id).text(data);
                    console.log('id: ' + id + 'data: ' + data);
                }
            });
});