设置子节点的属性

时间:2013-01-15 17:11:52

标签: javascript xml

我如何向“testTwo”标签添加属性? Javascript noob ..

        var XML = document.createElement("test");
        var Node = document.createElement("testOne");
        Node.setAttribute("id", "0");
        Node.setAttribute("random", "0"); 
        Node.appendChild( document.createElement("testTwo"));

        XML.appendChild(Node);

        console.log(XML.innerHTML);

2 个答案:

答案 0 :(得分:1)

预先创建testTwo节点。示例代码为:

var XML = document.createElement("test");
var Node = document.createElement("testOne");
Node.setAttribute("id", "0");
Node.setAttribute("random", "0"); 
var testtwo = document.createElement("testTwo");
testtwo.setAttribute("attr", "attrval");
Node.appendChild(testtwo);

XML.appendChild(Node);

console.log(XML.innerHTML);

答案 1 :(得分:1)

您拥有第一个节点的正确技术。对第二个节点使用相同的东西。在将其附加到某处之前创建第二个节点(testTwo)。使用您想要与之关联的所有属性创建节点。然后,一旦按照您想要的方式完成所有操作,然后append将其传递给您想要的父节点。

这将是代码的样子。

var XML = document.createElement("test");
var Node = document.createElement("testOne");
Node.setAttribute("id", "0");
Node.setAttribute("random", "0"); 

//Create the 2nd node first
var node2 = document.createElement("testTwo");
//add the attributes you want for this node
node2.setAttribute("key", "value");
node2.setAttribute("key2", "value2");
//once you're done append it.
Node.appendChild( node2 );

XML.appendChild(Node);

console.log(XML.innerHTML);