您的位置:首页 > Web前端 > JavaScript

js提交文本内容,无法提交到服务器问题解决和js替换字符串问题

2014-09-15 19:07 447 查看
其实就是带有html标签元素的内容无法提交到服务器的问题(asp.net,别的咱不清楚),当然知道“跨站脚本攻击”的,遇到这个问题不奇怪,但对于类似我这样的新手,可能还纳闷呢。。

不是个大问题,但自己遇到过两次,第二次竟然一点印象都没有,上网查了才恍然大悟。

解决方法:手动替换掉html标签或添加ValidateRequest="false"(此方法不建议,不安全),  http://blog.csdn.net/imagse/article/details/3095085

// 将输入字符串编码,这样所有的HTML标签都失效了。 
StringBuilder sb = new StringBuilder( 
HttpUtility.HtmlEncode(htmlInputTxt.Text)); 
// 然后我们选择性的允许<b> 和 <i> 
sb.Replace("<b>", "<b>"); 
sb.Replace("</b>", ""); 
sb.Replace("<i>", "<i>"); 
sb.Replace("</i>", ""); 
Response.Write(sb.ToString()); 

到这里又出现自己犯了不止一次的错误,jquery的“Replace”只能替换文本中第一次出现的相应字符,也就是一行这样的代码就替换了一处

解决方法:使用正则表达式解决  http://www.jiaonan.tv/html/blog/1/29207.htm

这些小问题出现了不止一次,自己却没什么印象,白费了时间在上面,所以记下来,没事看下,谨记谨记。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐