@My1Name

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

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

Оно в общем-то удовлетворяет, но переменная выводится с комментариями /*<![CDATA[*/.../*]]*/ Как исправить это недоразумение?
  • Вопрос задан
  • 200 просмотров
Решения вопроса 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>
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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