html以text文件输出(防止脚本强攻)

html以text文件输出(防止脚本攻击)
假如页面有很多个<td><td>标签,现在要向它们之中输入内容,如“<script>alert('XSS td')</script>”。

问题:如果让这些(注意是很多个)要输入的内容,以text文本的形式输入而不是以Html的形式输入呢?
目的:让html内容标签失效
------解决方案--------------------
正则匹配html标签替换掉
------解决方案--------------------
将<>替换为&lt;&gt;
------解决方案--------------------
推荐你用下 Firefox 然后搜索 xss 相关插件,我记得有一个很好使,自带常用的攻击字符串,还会自动尝试攻击
------解决方案--------------------
引用:
Quote: 引用:

正则匹配html标签替换掉
 1楼2楼,我不想替换,想要保留,只是不执行script语句。至少尝试innerTEXT或者jquery的text可以有效不执行的,只是我的html很多,没有办法一个一个的处理,想找指量有效方法。等待高手


这个你自己设置浏览器禁用js罗。。这个没办法。。

要么你试试将内容放到一个隐藏的textarea容器里面,这样是不会执行的js脚本的,然后用js替换掉script标签后在设置容器的innerHTML显示内容
------解决方案--------------------
输出的时候 直接把他转义掉就行了 ,另外如果是手机版的web页面 可以在Js里面自己写一个 字符解析函数 然后包装所有你要现实的信息 输出 就不会出现 这样的问题了
------解决方案--------------------

//是要这个效果么,不行我再改
<!DOCTYPE html>
<html>
<body> 

<script>
function myFunction()
{
  var tr = document.getElementsByTagName("td");
  var str ="";
  for(var i=0;i<tr.length;i++){
    str+="&lt;td&gt;"+tr[i].innerHTML+"&lt;script&gt;alert('XSS td')&lt;/script&gt;&lt;/td&gt;";
  }
document.write(str);
}
</script>
<table>
<tr>
<td>
1
</td>
<td>

2
</td>
<td>
3
</td>
<td>
4
</td>
</tr>
</table>

<button type="button" onclick="myFunction()">点击这里</button>

</body>
</html>