[英]How to prevent entry of HTML into ASP.NET Web form text box
我在ASP.NET Web窗体中有几个文本框。 我想确保用户不在这些文本框中输入HTML。 但是,我不确定如何防止输入HTML。 因此,我决定只允许使用字母数字字符,空格,感叹号,尖锐符号,美元符号,百分号,插入符号,星号以及左右括号。 我省略了&符号因为我不希望它们输入类似“<script&rt; ...”的内容
我该怎么做呢? 我是以正确的方式做到的吗?
谢谢!
看看这里http://msdn.microsoft.com/en-us/library/ff649310.aspx
您可以在Web配置中放置一条毯子语句ValidateRequest = true将检查所有用户输入并在用户插入带有错误字符的内容时抛出错误。
如果你需要允许一些html标签,那么你需要自己动手。
默认情况下,该页面将阻止用户在文本框或textareas中发布HTML或脚本。 请参阅MSDN
您可以使用方法从条目中清除HTML代码,如:
public static string ClearHTML(string Str, Nullable<int> Character)
{
string MetinTxtRegex = Regex.Replace(Str, "<(.|\n)+?>", " ");
string MetinTxtSubStr = string.Empty;
if (Character.HasValue)
{
if (MetinTxtRegex.Length > Character)
{
MetinTxtSubStr = MetinTxtRegex.Substring(0, Character.Value);
MetinTxtSubStr = MetinTxtSubStr.Substring(0, MetinTxtSubStr.LastIndexOf(" ")) + "...";
}
else
{
MetinTxtSubStr = MetinTxtRegex;
}
}
else
{
MetinTxtSubStr = MetinTxtRegex;
}
return MetinTxtSubStr;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.