簡體   English   中英

將XML文檔作為子文檔添加到Javascript中的另一個節點

[英]Add XML document as child to another node in Javascript

我有一個問題:我正在使用Javascript XML。 我想向該xml添加一個“父親”節點。 我怎么做?

/* Load the XML text from the text area to a Javascript XML object */
var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async = "false";
xmlDoc.loadXML(taData.innerText);
xmlObj = xmlDoc.documentElement;        

/* Creating the Screen node */
var Screen = document.createElement("Screen");
Screen.setAttribute("xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance");
Screen.setAttribute("xsi:noNamespaceSchemaLocation", "../../GUIGenerator_V2/Scheme/GG_Scheme.xsd");

/* Creating the Legend node */
var Legend = document.createElement("Legend");
Legend.setAttribute("EntityType", "Request");

var ImportedNode = document.adopteNode(xmlDoc.documentElement);
Legend.appendChild(ImportedNode);
Screen.appendChild(Legend);

圖例是Screen的子級,我想將xmlDoc作為圖例的子級。

我試圖寫:Legend.appendChild(xmlDoc.documentElement); 但出現錯誤。 可能是什么問題?

在某些情況下,XML是JavaScript內的DOM引用,因此您可以在其上使用標准DOM函數。 注意導航器特定的實現,以避免兼容性問題。

要添加一個父節點,您需要使用以下命令:

/* Load the XML text from the text area to a Javascript XML object */
    var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
    xmlDoc.async = "false";
    xmlDoc.loadXML(taData.innerText);
    xmlObj = xmlDoc.documentElement;        

    /* Creating the Screen node */
    var Screen = document.createElement("Screen");
    Screen.setAttribute("xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance");
    Screen.setAttribute("xsi:noNamespaceSchemaLocation", "../../GUIGenerator_V2/Scheme/GG_Scheme.xsd");

    /* Creating the Legend node */
    var Legend = document.createElement("Legend");
    Legend.setAttribute("EntityType", "Request");

    var ImportedNode = document.adopteNode(xmlDoc.documentElement);    
    Legend.appendChild(ImportedNode);
    Screen.appendChild(Legend);

執行該代碼后,您將獲得一個結構如下的文檔:

<fathernode>
  <YOURXMLDOCUMENT />
</fathernode>

暫無
暫無

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

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