编程论坛's Archiver

shiyide 发表于 2006-9-21 17:15

[求助]亟亟等待求助dom添加两个元素子节点问题。。

<P>请问如何使用dom对象的appendChild方法同时添加两元素子节点,并且能显示出来,用js脚本语言写<BR>xml代码如下:<BR>&lt;?xml version="1.0" encoding="UTF-8"?&gt;<BR>&lt;Address&gt;<BR>    &lt;Custom Sex="男"&gt;<BR>        &lt;Name&gt;吴梦达&lt;/Name&gt;<BR>        &lt;E-Mail&gt;Mengda@sina.com&lt;/E-Mail&gt;<BR>    &lt;/Custom&gt;<BR>    &lt;Custom Sex="女"&gt;<BR>        &lt;Name&gt;白晶晶&lt;/Name&gt;<BR>        &lt;E-Mail&gt;ghost@sina.com&lt;/E-Mail&gt;<BR>    &lt;/Custom&gt;<BR>&lt;/Address&gt;<BR><BR>要求在客户节点添加两个元素节点“公司”“联系电话”,其中元素节点“联系电话”含有“手机”与“办公电话”两个属性节点<BR>部分js代码如下:<BR>&lt;html&gt;<BR>    &lt;head&gt;<BR>        &lt;title&gt;Enter the title of your HTML document </P>
<P>here&lt;/title&gt;<BR>    &lt;/head&gt;<BR>    &lt;body&gt;<BR>        &lt;p&gt;Enter the body text of your HTML document </P>
<P>here&lt;/p&gt;<BR>        &lt;script language="javascript"&gt;<BR>          var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");<BR>          xmlDoc.async = false;<BR>          xmlDoc.load("Client.xml");<BR>          var cNode;<BR>          var tNode;<BR>          var mobile;<BR>          var tel;<BR>          var childs;<BR>          var i;<BR>            <BR>              cNode = xmlDoc.createNode(1,"公司","");<BR>              tNode = xmlDoc.createNode(1,"联系电话","");<BR>              mobile = xmlDoc.createNode(2,"手机","");<BR>              tel = xmlDoc.createNode(2,"办公室电话","");              <BR>          childs = xmlDoc.documentElement;           <BR>           childs.childNodes[0].appendChild(cNode);<BR>           childs.childNodes[0].lastChild.setAttributeNode(tel);<BR>  childs.childNodes[1].appendChild(cNode);<BR>           childs.childNodes[1].lastChild.setAttributeNode(tel);<BR>             <BR>      window.alert(childs.xml);<BR>      &lt;/script&gt;<BR>    &lt;/body&gt;<BR>&lt;/html&gt;<BR><BR>最后跳出来的窗口总是只有最后加进去的一个元素节点,不会实现两个同时显示<BR>请高手指导<BR><BR></P>

mordew 发表于 2006-9-23 18:42

<P>&lt;html&gt;<BR>    &lt;head&gt;<BR>        &lt;title&gt;Aptech&lt;/title&gt;<BR>    &lt;/head&gt;<BR>    &lt;body&gt;<BR>        &lt;script language="javascript"&gt;<BR>          var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");<BR>          xmlDoc.async = false;<BR>          xmlDoc.load("Client.xml");<BR>          if(xmlDoc.parseError.errorCode != 0)<BR>             window.alert(xmlDoc.parseError.reason);<BR>          else<BR>          {<BR>             var child = xmlDoc.documentElement.childNodes[0];<BR>             while(child != null)<BR>             {<BR>                 var cNode = xmlDoc.createNode(1,"公司","");<BR>                 var tNode = xmlDoc.createNode(1,"联系电话","");<BR>                 var mobile = xmlDoc.createNode(2,"手机","");<BR>                 var tel = xmlDoc.createNode(2,"办公室电话","");<BR>                 child.appendChild(cNode);<BR>                 child.appendChild(tNode);<BR>                 child.lastChild.setAttributeNode(mobile);<BR>                 child.lastChild.setAttributeNode(tel);<BR>                 child = child.nextSibling;<BR>             }<BR>             window.alert(xmlDoc.documentElement.xml);<BR>           }<BR>      &lt;/script&gt;<BR>    &lt;/body&gt;<BR>&lt;/html&gt; </P>


页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.