字符 ' 导致跳转到网站中的登录页面 ASP.net



我有一个 asp.net 的C#网站。 我发现了一个问题,即字符 ' 导致重新路由到登录页面。如果文本框中的文本类似于abc的汽车,则在使用按钮提交表单时会导致跳转到登录页面,而如果文本更改为abc的汽车,则其行为正常。 此外,并非所有ISP都发生此问题。 其次,有一个跳转到登录页面,但实际上它没有注销。如果我们按下后退按钮,会话仍然处于活动状态,它可以正常工作。

此外,如果 aspx 文件在标签中包含'like主席的评论,则页面将不会加载并导致重新路由到登录页面

谁能帮我 下面是其中一个文本框的代码:

<td style="width: 522px">
<asp:TextBox ID="TextBoxTP" runat="server" Height="90px" TextMode="MultiLine" onDrop="return false;"
onKeyPress="return limitCharsLength(this,2000);" onPaste="return limitCharsLength(this,2000);" onCopy="return false" oncut="return false"
Width="100%" AutoPostBack="True" ontextchanged="TextBoxTP_TextChanged"></asp:TextBox>
<asp:TextBoxWatermarkExtender ID="TextBoxTP_TextBoxWatermarkExtender" 
runat="server" Enabled="True" TargetControlID="TextBoxTP"  WatermarkText="Enter text here. Use indirect form wihtout addressing the candidate." WatermarkCssClass="watermarked">
</asp:TextBoxWatermarkExtender>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ErrorMessage="Enter your comments about Teaching Performance"
ControlToValidate="TextBoxTP"></asp:RequiredFieldValidator><br/>
<asp:CustomValidator ID="CustomValidator1" runat="server" ErrorMessage="Please write one or two sentences"
OnServerValidate="ValidateTextLength" ClientValidationFunction="ValidateTextLength"
ControlToValidate="TextBoxTP"></asp:CustomValidator>
<asp:Label ID="LabelPrTP" runat="server"></asp:Label>
</td>

以下是使用的 Javascript:

function limitCharsLength(Object, MaxLen) {
if (Object.value.length > MaxLen - 1) {
Object.value = Object.value.substring(0, MaxLen);
}
}
function limitClipBoard(Object, MaxLen) {
if (window.clipboardData != null) {
//alert("clipboardData  is not null");
if (window.clipboardData.getData("Text").length > MaxLen - 1 - 
Object.value.length) {
//  alert("clipboardData  is very big");
window.clipboardData.setData("Text", 
window.clipboardData.getData("Text").toString().substring(0, (MaxLen - 
Object.value.length)));
}
}
}
function ValidateTextLength(oSrc, args) {
args.IsValid = args.Value.length > 10;}

问题解决了。问题是网络安全从防火墙绕过了负载均衡器。当服务器请求通过负载均衡器时,它会处理此类漏洞并将 apostrophy('( 视为文本。

最新更新