Как остановить html textarea от интерпретации html-сущностей в их символы - PullRequest
0 голосов
/ 03 сентября 2010

У меня есть текстовая область HTML, которая используется для отображения строки из базы данных.Текстовая область может быть отредактирована, а любые изменения сохранены в базе данных.

Проблема заключается в том, что при получении объектов ® в строке они преобразуются в их символы, а затем при сохранении текста символы перезаписываютюридические лица.Например: база данных вернет строку Microsoft®, которая будет отображаться как Microsoft®, а затем сохранена таким образом.Есть ли способ заставить текстовые области не интерпретировать сущности?

Продолжение: сейчас я думаю, что при получении строки из базы данных заменить все '&' на '&'.Но мне все еще интересно, есть ли способ остановить текстовые области от преобразования строк, которые они получают.

1 Ответ

6 голосов
/ 03 сентября 2010

То есть вы хотите экранировать сущности HTML?Вы можете использовать JSTL <c:out> или fn:escapeXml().

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
...
<textarea><c:out value="${bean.text}" /></textarea>

или

<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
...
<textarea>${fn:escapeXml(bean.text)}</textarea>

.каждый & до &amp;, так что, например, &reg; в конечном итоге станет &amp;reg;, и таким образом он будет отображаться как &reg;.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...