Вставка html кода яваскриптом
Как правильно сделать следующее.
Нужно при определенных условиях отобразить отредактированный html шаблон в браузере. Как правильно добавить отредактированный шаблон кода(это например 10 div элементов + статический текст)? Соответственно каждый раз в этом шаблоне может что-то обновится например часть текста перед вставкой и тд. потом идет вставка вдокумент. Правильно это все(html-код шаблона) запихивать в яваскрипт переменную и потом редактировать и вставлять в документ или же вставить в документ сразу получить этот html-код шаблона по селектору, забить в переменную, обработать и вставить в документ. Т.е. по сути клон элемента. Источник при этом всегда скрыт он просто используется как шаблон. html-код шаблона эьто обычный html, где перед вставкой я например меняю ссылки в href <div class="navbar navbar-top"> <a href="http://javascript.ru/" accesskey="1">Главная</a> <span class="navbar">> <a href="http://javascript.ru/forum/" accesskey="1">Форум</a></span>» <strong> Сообщение форума </strong> </div> |
эгегегегей, прмогите пожалуйста, ничего писать не нужно(код) просто дать совет как поступать:)
|
могу ошибаться, но правильней использовать шаблонизатор
|
Policeman, ИМХО как говорит nerv_ использовать шаблонизатор, или юзать второй вариант, при условии, что данные элементы не будут мешать DOM
изменяете необходимые значения в невидимом div class="navbar navbar-top" и подставляйте уже с измененными |
Можно создать функцию добавления с необходимыми параметрами, которые предполагается изменять
<body> press Enter <script> function create(src1, src2) { var str = '\ <div class="navbar navbar-top">\ <a href="' + src1 + '" accesskey="1">Главная</a>\ <span class="navbar">> <a href="' + src2 + '" accesskey="1">Форум</a></span>»\ <strong>\ Сообщение форума\ </strong>\ </div>\ '; var div = document.createElement('div'); div.innerHTML = str; document.body.appendChild(div); } document.body.onkeyup = function (e) { e = e || event; if (e.keyCode == 13) { create('http://javascript.ru/', 'http://javascript.ru/forum'); } } </script> |
Часовой пояс GMT +3, время: 01:55. |