在 ASP.NET 中,如果文本在“大于”和“小于”符号之间给出,则无法保存文本框

Posted

技术标签:

【中文标题】在 ASP.NET 中,如果文本在“大于”和“小于”符号之间给出,则无法保存文本框【英文标题】:In ASP.NET unable to save TextBoxes if the text is given in between ''greater than' and 'less than' symbols 【发布时间】:2016-05-31 18:41:29 【问题描述】:

如果文本输入介于“大于”和“小于”符号之间,我无法保存文本。请在 javascript 或 ASP.net 中找到解决方案

【问题讨论】:

"<" in a text box in ASP.NET --> how to allow it?的可能重复 这与 Classic ASP 无关。 请建议我:只有在 之间输入了一些文本时,我才需要显示验证。其余的情况应该被浏览器接受。建议没有安全问题的解决方案。 【参考方案1】:

出于安全原因,禁止使用此类符号 - 否则有人可以简单地注入他们的代码。如果你需要传递这样的符号,你应该像这样传递它们:“/” 或者设置TextBox属性ValidateRequestMode = ValidateRequestMode.Disabled

【讨论】:

您能建议一种使用 JavaScript 解决此问题的方法吗?【参考方案2】:

如果您想允许 html 标签,即“”,那么您需要在 ASP 页面中设置 validateRequest="false",最好的办法是使用 HTML 编码器解析这些标签。

【讨论】:

我们必须在哪里设置 validateRequest="false"? 在aspx页面的第一行,是一个属性。 如果我这样做,有什么缺点吗? 我试过了。但不工作。我正在使用 ASP.NET 4.5。有什么要补充的吗? 当我在 httpruntime 中给 requestValidationMode="2.0" 提供它的工作时它的工作谢谢 Rakesh

以上是关于在 ASP.NET 中,如果文本在“大于”和“小于”符号之间给出,则无法保存文本框的主要内容,如果未能解决你的问题,请参考以下文章

如何在小于和大于之间查找文本,然后在 Java 中去除 <>?

从 SQL asp.net 页面导出数据到 excel 会截断 < 字符上的数据

在 asp.net 中使用 Bind 表达式时如何连接文本

ASP.NET TextBox 控件在后台带有标签文本

小于等于号在电脑上怎么打?

无法更改 ASP.NET MVC 3 中文本框的值