Есть альтернатива innerHTML? Есть код приходящий с сервера: PHP:
$html = '
Тут див с фотографией
<script src="../assets/js/app.js"></script>
<script src="../assets/js/plugins/magnific-popup/magnific-popup.min.js"></script>
<script>
jQuery(function () {
App.initHelpers(\'magnific-popup\');
});
</script>
';
Мы его получаем и нужно его вывести на экран
document.getElementById('content').innerHTML = data.html;
Но тут проблема Если в innerHTML есть тег script – он не будет выполнен.
Если его вывести через append, то все работает, но текст добавляется к уже имеющемуся тексту, а нужна замена, как это делает innerHTML
Раз уж у тебя есть jQuery, то его и используй. Оно выполняет скрипты при вставке через $smth.html(someHtml).
Как насчет создания нового дочернего объекта?
function createLabel(val) {
var a = document.createElement("a");
a.innerHTML = val;
document.getElementById(id_of_element).appendChild(a);
}
Здесь также через appendChild, но другого выхода нет (кроме document.write, но он стирает все остальное. Можно заранее ставить пробелы (" текст с пробелом спереди") или юзать /n
document.getElementById('content').innerHTML = "";
// потом append
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости