C# 潜在危险的请求。从客户端检测到表单值(txtText=<;h4>;test<;)
我正在使用以下代码段:C# 潜在危险的请求。从客户端检测到表单值(txtText=<;h4>;test<;),c#,asp.net,C#,Asp.net,我正在使用以下代码段: <body> <form id="form1" runat="server"> <div> <input type="text" name="txtText" value=" " /> <asp:TextBox ID="txtData" runat="server" /> <asp:Button ID="btn" Text="Submit" O
<body>
<form id="form1" runat="server">
<div>
<input type="text" name="txtText" value=" " />
<asp:TextBox ID="txtData" runat="server" />
<asp:Button ID="btn" Text="Submit" OnClientClick="GetData()" runat="server"
onclick="btn_Click" />
</div>
<script>
function GetData() {
$('[id$=txtData]').val(escape($('input[name="txtText"]').val()))
//$('input[name="txtText"]').val('')
}
</script>
</form>
</body>
函数GetData(){
$('[id$=txtData]').val(转义($('input[name=“txtText”]').val())
//$('input[name=“txtText”]').val(“”)
}
当我输入一些数据,如“Test
”时,它会抛出一个异常,但是,当行/$('input[name=“txtText”]').val(“”)
未注释时,代码工作正常
有人能帮我解释一下这里到底发生了什么吗?这是为了保护你免受攻击 如果您不需要它,可以通过以下方式禁用它:
<%@ Page ValidateRequest="false" %>
和“提交”按钮:
<asp:Button id="submitbutton" runat="server" onclick="submitForm" Text="Submit" />
您是否为txtData
使用了任何类型的所见即所得插件?允许用户编写文本但实际将HTML写入底层表单控件的东西?添加普通文本时,代码的潜在副本不会发出任何错误。这是您在主题行中提到的一个特定场景,您试图提供html代码。是的,我正在为txtText使用WYSIWYG插件,在提交之前,我将txtText html输入控件的编码数据提供给隐藏的服务器控件,如txtData。在这里,您可以解释一下onclick事件吗?是客户端还是服务器端?客户端不会有这些方法,在服务器端也不会到达事件。@KartheekN试试看!这是服务器端事件。
void submitForm(Object sender, EventArgs e) {
Response.Write(Server.HtmlEncode(textbox.Text));
}
<asp:Button id="submitbutton" runat="server" onclick="submitForm" Text="Submit" />