сохранить форматирование, введенное в текстовом поле asp.net (возврат каретки, новая строка и т. д.) - PullRequest
0 голосов
/ 24 марта 2011

У меня есть текстовое поле, использующее многострочный режим, и когда я создаю параметр хранимой процедуры для обновления, я использую Server.HtmlEncode для значения текстового поля. Я могу скопировать содержимое из записи данных в Блокнот, и оно показывает места, где пользователь нажал клавишу Enter для новых абзацев.

При отображении этого содержимого на странице (не текстовое поле для редактирования; просто назначение содержимого элементу управления Literal) весь текст запускается вместе.

Я провел несколько поисков по поводу использования Replace и различных escape-последовательностей или Environment.NewLine. Я все еще не понимаю, как отобразить текст при вводе пользователем.

1 Ответ

3 голосов
/ 24 марта 2011

Предполагая, что вы используете C #, вы можете сделать следующее при отображении строки на странице

theStringYouWantToFormat.Replace(char.ConvertFromUtf32(13),"<br/>")

Когда вы вызываете Server.HtmlEncode для значения, которое вы извлекаете из текстового поля, оно просматривает текст и кодирует любые HTML-теги, содержащиеся в этом текстовом поле, поэтому, например, <script></script> будет закодировано в &lt;script&gt;&lt;/script&gt;.

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