簡體   English   中英

如何將XML DOM元素轉換為HTML DOM元素?

[英]How do I convert an XML DOM element into an HTML DOM element?

我正在嘗試使用XMLHTTPRequest下載.xml文件並將其某些元素作為內容添加到頁面。 我要做的是發出請求,獲取文檔,從我要導入的xml中獲取特定的DOM元素,使用existing.appendChild(fromXML)將xml DOM中的元素追加到HTML DOM中的元素。

但是,沒有渲染任何實際的標簽。 每個標記內的文本都可以很好地呈現。 但是標簽本身似乎被忽略了。 Firebug在HTML面板中以淺藍色字體顯示添加的標簽,而不是其他標簽的普通藍色,但是我一直無法弄清楚這意味着什么。 該Webkit開發人員工具還向我顯示了標簽在那里(盡管沒有特殊的顏色),但是它們沒有正確呈現(例如img和標簽根本沒有任何作用)。

我是否缺少從XML DOM到HTML DOM的轉換?

這是我的代碼的簡單版本,為簡潔起見:

// Make xmlHTTPRequest
...

// Get items from the response xml
var items = xhr.responseXML.getElementsByTagName("item");  

// Get one item and it's children recursively
var elm = document.importNode(items[0],true);  

// Get the existing element to add the item add to  
existingDomElement = document.getElementById("demo");   

for (var i = 0; i < $(elm).children().length; i++) {  
    var child = $($(safeChild).children()[i])[0];  
    existingDomElement.appendChild(child);  
} 

顯然,它已經完成了,請參見此問題 該張貼者的代碼似乎有效,但是他想要更優雅簡潔的內容。 至少在這方面他似乎比您領先一步。

但是唯一的建議是將整個過程序列化為文本,然后在當前樹中進行解析-無論如何,這不一定對您有用,因為XML不一定總是正確地解析為HTML ...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM