jQuery insert after the last element

Just you need last() method

$('<div id="NextElement"' + id +'>' + /*Add after the last element*/ + '</div>')
.insertAfter($('[id^="NextElement"]').last());

HTML:

<div id="FirstElement"> First element loaded first  </div>

<div id="AddNextElement">Click me</div>

JS:

var current = 0;
$('#AddNextElement').click(function (e) {
    var $el = (current == 0) ? $("#FirstElement") : $("#NextElement"+current);
    current++;
    $('<div id="NextElement' + current +'">Other element '+current+'</div>').insertAfter($el);
});

Try yourself on jsfiddle


How about adding a class to all elements? It will be easier to find the last:

$('.element-class:last').after('<div class="element-class" id="NextElement"' + id +'>' + /*Add after the last element*/ + '</div>');

This of course means that your First element must also have the class:

<div class="element-class" id="FirstElement"> /*First element loaded first */ </div>

Find the last element in the DOM, in your case it'll be 'NextElementxx' and then use 'after':

$('#NextElement2').after( ..new stuff.. );