3

我有一个填充了 HTML 的隐藏字段,用于在页面加载时出现模式弹出框。但是,在回发时,隐藏字段的内容会出现异常:

A potentially dangerous Request.Form value was detected from the client (ctl00$MainContentCP$hfContent="<div>

我知道您可以使用以下方法禁用整个页面的验证的方法:

validateRequest="false"

但是由于这个页面有一些我想保护免受脚本攻击的文本字段,这可能不是正确的解决方案。

我可以以某种方式仅为隐藏字段禁用验证吗?

导致异常的代码:

  <asp:HiddenField ID="hfContent" runat="server" />

  if (!Page.IsPostBack)
  {
        Pages pages = new Pages();
        hfContent.Value = pages.getPageById(14).PageContent; //this
  }
4

2 回答 2

0

如果您创建 4.0 ASP.NET 应用程序,请参阅: ASP.NET 请求验证部分

于 2012-07-04T19:44:27.757 回答
0

看起来错误在声明中。尝试以下操作:

<asp:HiddenField ID="hfContent" Value="String" runat="server" />

还要仔细检查分配给隐藏字段的值。在您的代码中,您需要删除行 Pages pages = new Pages();

于 2012-07-04T20:09:37.990 回答