Задать вопрос
@My1Name

Как средствами Thymeleaf вывести html переменную в JavaScript?

Как вывести html переменную в теле JavaScript?
Нашёл в интернете следующее решение:
<script th:inline="javascript">
/*<![CDATA[*/
[#th:block th:utext="${myCode}" /]
/*]]>*/
</script>

Оно в общем-то удовлетворяет, но переменная выводится с комментариями /*<![CDATA[*/.../*]]*/ Как исправить это недоразумение?
  • Вопрос задан
  • 261 просмотр
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Учебный центр IBS
    JVA-I-004 Архитектура REST
    1 неделя
    Далее
  • Skillbox
    Java Spring Framework
    2 месяца
    Далее
  • Skillfactory
    Профессия Java-разработчик
    14 месяцев
    Далее
Решения вопроса 1
@My1Name Автор вопроса
<script th:inline="javascript">
var htmlVariable = /*[#th:block th:utext="${htmlText}"/]*/;
</script>
Html текст нужно предварительно взять в 'одинарные' кавычки. Иначе JavaScript не будет работать.

Более простой вариант:
var htmlVariable = /*[[${htmlText}]]*/ 'value'; при этом 'value' будет заменено ${htmlText} содержанием. Однако, могут быть проблемы с UTF-8.

Самый простой вариант:
<script th:inline="javascript">
var htmlVariable = '[(${htmlText})]';
</script>
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы