Но объясните мне, я не понимаю.
Почему этот код
$(this).replaceWith(newElement);
не заменяет элемент на нужный мне?
text - грубо говоря тот же html код со своими нодами и так далее.
Я смотрел в справке и там куча примеров типа:
$( "button" ).click(function() {
$( this ).replaceWith( "<div>" + $( this ).text() + "</div>" );
});
Единственное, что надо заменять не на элемент, а на его html код(но это все равно не сделало код работоспособным).