Вопрос

Есть ли в asp.net встроенный механизм, который может дезинфицировать весь ввод текстового поля вместо перенаправления на страницу с ошибкой?

У меня есть текстовое поле ввода, где пользователь может ввести имя, но если он попытается ввести и < > теги на странице автоматически выдает ошибку. Я просто хочу обработать эту ошибку удобным для пользователя способом.

Это было полезно?

Решение

Вы можете использовать ASP.NET элемент управления RegularExpressionValidator с шаблон как: ^[^<>]*$

<asp:RegularExpressionValidator ID="rev" runat="server"
    ControlToValidate="txtBox"
    ErrorMessage="The <> tags are not allowed!"
    ValidationExpression="[^<>]*" />
<asp:RequiredFieldValidator ID="rfv" runat="server" ControlToValidate="txtBox" 
    ErrorMessage="Value can't be empty" />

RequiredFieldValidator используется в сочетании с RegularExpressionValidator для предотвращения пустые записи. Если это текстовое поле является необязательным и требует проверки только при вводе чего-либо, вам не нужно использовать RequiredFieldValidator.

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

Однако, если вам нужно сделать это для многих текстовых полей и вы просто хотите представить что-то более приятное, чем страница с ошибкой, вы можете обработать ошибку ValidateRequest, чтобы предоставить более дружеское сообщение и сохранить пользователя на той же странице (а не просто заменить это с пользовательской страницей ошибок). Для получения дополнительной информации ознакомьтесь с публикацией Кирка Эванса: Обработка ошибок ValidateRequest на странице (см. раздел «Переопределение метода OnError»).

Другие советы

Вы можете обратиться к библиотеке AntiXSS для поиска тот. Это dll, поэтому его легко зайти и начать его использовать.

Загрузить можно по адресу CodePlex .

ASP.net имеет элементы проверки

[ http://msdn.microsoft.com/ ан-нас / библиотека / 7kh55542.aspx] [1]

Также есть редактор Mark Down , который представляет собой элемент управления, удаляющий теги html и т. д.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top