我为strip <script> </script>标签创建此表单,但此表单不起作用

时间:2011-03-26 15:25:34

标签: php javascript asp.net html

我为条带<script></script>标签创建此表单,但此表单不起作用请任何人修改此表单以开始工作

<html>
<head>
<script language='javascript'>
  function alfa(s) {
    return s.replace(/<script>[^<\/script>]*<\/script>/g, "");
  }
</script>
</head>
<body>
<form>
<textarea name="txt" style="width: 300px; height: 150px"></textarea><br />
<input type="button" value="Remove script tags" onClick="txt.value=alfa (txt.value)">
</form>
</body>
</html>

2 个答案:

答案 0 :(得分:5)

return s.replace(/<script>[\s\S]*?<\/script>/g, "");

[\s\S]表示“任何字符”(Javascript中的点与\ n不匹配),问号使*“懒惰”。仅将[^ ]用于否定单个字符。 [^<\/script>]表示“除&lt ;, /,s,c,r,i,p,t或&gt;之外的任何字符”。

答案 1 :(得分:3)

试试这个

s.replace(/<script[ >][\s\S]*?<\/script>/g, "");

您的起始标记不一定是<script>。标签名称可以跟空格和其他属性。

你也错误地使用[]字符类。