我在 ajax 更新面板中使用了一个 asp.net 文本框。如果我在文本框中输入 &# 并按保存按钮,它会出现 javascript 错误
Sys.WebForms.PageRequestManagerServerErrorException: An unknown error occurred while processing the request on the server. The status code returned from the server was: 500
请帮我看看为什么会出现这个错误?
请您参考如下方法:
可能 ASP.NET Request Validation启动并检测到潜在的危险请求(文本框值中的 &#)。这会导致 HttpRequestValidationException将被抛出 - 因此 500 HTTP 代码由 UpdatePanel 返回。在我看来,有两种方法可以解决这个问题:
- 验证文本框的内容并替换任何具有潜在危险(类似 HTML)的值。
禁用请求验证:
<%@ Page ValidateRequest="false" %>
如果您选择禁用请求验证,请确保此文本框的值不会在您的应用程序的其他地方逐字输出。确保您使用的是 HttpUtility.HtmlEncode显示时为了避免 XSS问题。






