2011-03-22 106 views
0

我想删除<script>want to remove</script> 之间我对PHP & Java脚本的知识非常少量的一切事物或内容,所以请给我,我有一个完整的代码之间的所有内容不知道如何使用PHP或JavaScript编码到<tags></tags>删除<脚本类型=“JavaScript的”> ABCD</script>标签

之间移除的内容,我发现这个框,并在我的网站复制他们删除所有的标签,但我不希望这样,我想只有标签之间的内容删除。 请任何人修改此框或脚本以删除<tags></tags>之间的内容或给我其他脚本。

<script type="text/javascript"> 

// Strip HTML Tags (form) script- By JavaScriptKit.com (http://www.javascriptkit.com) 
// For this and over 400+ free scripts, visit JavaScript Kit- http://www.javascriptkit.com/ 
// This notice must stay intact for use 

function stripHTML(){ 
var re= /<\S[^><]*>/g 
for (i=0; i<arguments.length; i++) 
arguments[i].value=arguments[i].value.replace(re, "") 
} 

</script> 

<form> 

<textarea name="data1" style="width: 400px; height: 100px"></textarea><br /> 
<input type="button" value="Remove any HTML tags" onClick="stripHTML(this.form.data1)"> 
</form> 
+0

所以做我理解正确,如果textarea的“数据1”包含例如那'你好这是不需要的世界!'它应该包含'你好世界! – 2011-03-22 13:19:35

回答

1

你可以尝试: document.getElementsByTagName( '脚本')[0] .innerHTML = '';

+0

cliet的一面是黑暗的一面! – Stephan 2011-03-22 14:00:54

+0

永远不要低估客户端的力量。有时候,安全性不是问题,有时需要在客户端做所有事情。例如 - 在代码运行后删除或更改代码。虽然 - 我通常会原则上同意你的意见,但是需要知道基础,优化,混淆和压缩的代码。 – 2011-03-22 16:13:56

+0

客户端有时也是_only_方面,例如Phonegap移动应用程序的情况。我在这样的应用程序中使用的东西是从下载的内容中清理脚本,使用JQuery是'var cleanHtml = $(dirtyHtml).html()' – chrysanhy 2012-07-09 23:56:39

1

根据您发布的代码块,您似乎希望从表单元素(例如textarea)的值中去掉脚本标签。在客户端清理用户输入通常被认为是一个坏主意,因为这种安全措施可以轻松绕过。更好的解决方案是从服务器端发布的数据中剥离脚本标签。

这里是PHP的例子:

$data = $_POST['fieldname']; 

$outputData = strip_tags($data, array(/* here you can specify the allowed html tags, all others will be stripped */); 

echo $output;