我有RadioButtonList,我在其中动态添加图片:
this.RlCredtiCardTypes.Items.Add(new ListItem(String.Format("<img src='{0}'>", GetImageUrl(item.Code), item.Code)));
这将呈现正常,但在回发后我收到以下错误:
A potentially dangerous Request.Form value was detected from the client
我理解错误。问题是;如何动态地将图像添加到我的RadioButtonList而不会导致此错误?
我还尝试过HttpContext.Current.Server.HtmlEncode
img字符串,但这会呈现文字文字,而不是图片。
作为备注,我不想要设置EnableEventValidation="false"
,因为这会让我的页面开启恶意活动。
此问题似乎与此question有关,但未标记为已回答。
答案 0 :(得分:0)
消息A potentially dangerous Request.Form value was detected from the client
你最好的方法是将字符串编码到base64中,然后在显示形式时对其进行解码,然后在发布表单数据时,只需通过jquery或javascript将所有与html相关的数据转换为base64字符串。
答案 1 :(得分:0)
发生这种情况的原因是图片的html代码正在回发中发送。您可以通过添加ValidateRequestMode =“Disabled”validaterequestmode(v=vs.110)
来禁用RadioButtonList上的验证<asp:RadioButtonList ID="RlCredtiCardTypes" runat="server" ValidateRequestMode="Disabled"></asp:RadioButtonList>
这将使您的表格的其余部分安全地检查恶意代码。