2012-04-16 61 views
0

我需要清除标签</form></body>之间的所有文本。
出现一些没有ID的文字。两个标签之间清除

</form> 
text text text 
</body> 
+0

你可以张贴代码与所有起始标记。 ..就像起始表单标签和一些示例数据在 – DG3 2012-04-16 17:50:30

+0

之间可以看到完整的HTML吗?只有这一点,我们无法帮助您,因为在解决方案中,我们需要针对所有其他标签采取行动。 – noob 2012-04-16 17:51:27

+1

在正常的JavaScript中,你可以遍历这些节点并查找节点类型为3(用于文本)的节点并删除它? – MyStream 2012-04-16 17:51:38

回答

4
var pa=document.body; 
    while(pa.lastChild.tagName!="FORM"){ 
    pa.removeChild(pa.lastChild); 
} 
+0

这是最好的解决方案,因为它不依赖于能够更改标记。假设最终的文本节点注册为一个孩子,我相信DOM是如何处理匿名文本节点的,所以我认为它是正确的。 – Kasapo 2012-04-16 17:54:48

+0

谢谢,它的工作原理! – NoNameZ 2012-04-16 17:59:25

0

试试这个:

</form> 
<span id="mySpan" onclick="document.getElementById('mySpan').innerHTML = '';">text text text</span> 
</body> 
+0

我更改了引号 - 你在getElement中调用了双引号,但我的编辑需要同行评审,显然 – Kasapo 2012-04-16 17:53:07

+0

是的,谢谢。我发现并试图修复它,但你已经拥有了。正如我所说,谢谢 – 2012-04-16 17:53:51

+0

,文本出现在页面加载时没有ID和其他工作人员。我需要在和之间以某种方式进行解析并删除。 – NoNameZ 2012-04-16 17:54:14

0

更换外部元素的HTML与内部元素的HTML:

<div id="div1"> 
    Outer 
    <div id="div2">Inner</div> 
    Outer 
</div> 

<div onclick="replace()">Clear</div> 

<script type="text/javascript"> 
    function replace() 
    { 
     $("#div1").html($("#div2").html()) 
    } 
</script> 
+0

这也删除表单之前的任何文本,问题询问关于表单后的文本,但它是最终节点。 – Kasapo 2012-04-16 17:55:45