ASP.NET Javascript Ошибка при вводе - PullRequest
       30

ASP.NET Javascript Ошибка при вводе

3 голосов
/ 14 сентября 2010

Моя страница ASP.NET содержит <asp:TextBox />, текстовый ввод которого кодируется с помощью HttpUtility.HtmlEncode();

Страница также содержит валидаторы, такие как <asp:RequiredFieldValidator /> и <asp:CustomValidator />, а также несколько наборов инструментов AJAX <toolkit:ValidatorCalloutExtender />

Если пользователь вводит </ в качестве текста в текстовом поле, возникает ошибка Javascript

A potentially dangerous Request.Form value was detected
from the client (ctl00$contentPlaceHolder$ucLookup$tbxLastName=&quot;&lt;/&quot;)

происходит при отправке формы. Я попытался добавить различные обработчики событий, такие как

protected void Page_PreInit(object sender, EventArgs e){}
protected void Page_Init(object sender, EventArgs e){}
protected void Page_PreLoad(object sender, EventArgs e){}

и установка точек останова, но ни одна из них не достигнута, что позволяет мне полагать, что ошибка происходит только на стороне клиента.

Как я могу отладить эту ошибку? Существуют ли какие-либо хуки, которые позволяют мне перехватывать ввод пользователя и фильтровать или кодировать его, прежде чем это вызовет эту проблему?

Ответы [ 2 ]

1 голос
/ 14 сентября 2010

Попробуйте проверить предложения в этой теме: Потенциально опасное значение Request.Form обнаружено клиентом

0 голосов
/ 14 сентября 2010

Для этой потенциально опасной ошибки вы можете сделать следующее и посмотреть, поможет ли она -

Добавьте строку: <pages validateRequest="false" /> внутри <system.web> секции

...