Введение
В настоящее время я создаю шаблон, в котором пользователи могут создавать шаблон для приложения. Пользователь может перетаскивать несколько блоков, таких как текстовые блоки и блоки "настраиваемого кода". Шаблон будет анализироваться в приложении. Сейчас шаблон может выглядеть так:
<section>
<div class="row">
<div class="col-sm-12">
<section data-type="code">
<#code></#code>
</section>
</div>
</div>
<div class="row">
<div class="col-sm-12" data-type="container-content">
<section data-type="text">
<u>Lorem</u> ipsum
</section>
</div>
</div>
</section>
Итак, этот шаблон содержит два элемента (см. атрибут data-type
): одна часть - это пользовательский письменный код. Здесь пользователь написал собственный код, включая код Apache Freemarker. Вторая часть - это индивидуальный письменный текст.
Ситуация
Приведенный выше код будет использоваться двумя разными способами.
- Именно этот код будет использоваться внутри приложения, используя шаблон (так что почему они должны иметь возможность писать код Freemarker, потому что это будет проанализировано).
- На моем веб-сайте пользователь должен уметь для редактирования этого шаблона. Поскольку код хранится в базе данных как написано выше, есть проблема:
Проблема
Когда я непосредственно обрабатываю шаблон в веб-интерфейсе, часть text
будет правильно отображаться с тегами <u></u>
, но часть code
будет отображаться как html, что может вызвать странное поведение (например, так как обозначение freemarker </#list>
автоматически преобразуется в <!--#list-->
).
Но если я сделаю полный шаблон только текстовым, часть text
с тегами <u></u>
также не будет отображаться.
Ожидаемый результат
Я хочу прочитать переменную шаблона с помощью JavaScript/jQuery, а затем проанализировать каждый data-type
с помощью text
как html и code
как текст.
Как я могу пропустить шаблон и сделать это?