2012-04-16 65 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