Ошибка при отображении '&' в текстовом поле html telerik - PullRequest
6 голосов
/ 31 августа 2011

Как я могу обработать символ амперсанда ("&") в текстовом поле Telerik HTML?Во время рендеринга выдает ошибку.Кроме того, кто-нибудь знает о любом другом символе, который может вызвать ошибки в текстовом поле HTML?

1 Ответ

7 голосов
/ 31 августа 2011

Амперсанд - это специальный символ в HTML, который указывает начало escape-последовательности (так что вы можете сделать что-то вроде ©, чтобы получить символ авторского права и т. Д.).Если вы хотите отобразить амперсанд, вы должны его избежать.Поэтому, если вы замените все амперсанды на &, это должно устранить ошибку.

Однако, если в вашем входе были амперсанды, которые уже были экранированы - как, возможно, ваши данные имели © - вы быне хочу сбежать от этого амперсанда.Но если в ваших данных не будет ни одного из этих амперсандов, подойдет простая замена.

Вам также необходимо заменить символы больше (и меньше) (> и <) на <code>&gt; и &lt;

Telerik рассказывает об этих ограничениях / проблемах на этой странице http://www.telerik.com/help/reporting/report-items-html-text-box.html

Также в соответствии со спецификацией HTML (и общей спецификацией XML) "&",Символы «<» и «>» считаются специальными (разделители разметки), поэтому их необходимо кодировать, чтобы их можно было рассматривать как обычный текст.Например, символ «&» можно экранировать с помощью сущности «&».Более подробную информацию по этому вопросу вы можете найти в этой статье на w3.org.

...