在做javascript编程,现在需要合并2个xml文件为一个xml文件。然后直接读取合并后的xml文件~~拜托大家了 ~~

1.xml文件如下<dataset><record><data>5</data><name>chen</name></record><record><data>4</da... 1.xml文件如下

<dataset>
<record>
<data>5</data>
<name>chen</name>
</record>
<record>
< data>4</data>
<name>sun</name>
</record>
</dataset>

2.xml文件如下

<dataset>
<record>
<sex>f</sex>
<collor>yellow</collor>
</record>
<record>
<sex>m</sex>
<collor>black</collor>
</record>
</dataset>
展开
 我来答
顺畅又灵秀丶君子兰1175
2011-01-19 · TA获得超过1247个赞
知道小有建树答主
回答量:889
采纳率:100%
帮助的人:648万
展开全部
<button onclick="alert(xml.lookxml())" id=button1 name=button1>查看XML标签</button>
<hr>
添加节点:姓名:<input type=text id="name"> 内容:<input type=text id="content"> <input type=button value="添加XML节点" onclick="addnode()" id=button3 name=button3>
<hr>
xpath查询:<input type=text id="sql"><input value="xpath查询" type=button onclick="Ctable(oo('sql').value)" id=button4 name=button4>
<hr>
<div id=createTable></div>
<script>
var isIE=navigator.userAgent.indexOf("IE")>-1?true:false
function CAJAX(){
this.createDomDoc=function(){
var signatures=["Msxml2.DOMDocument.5.0","Msxml2.DOMDocument.4.0","Msxml2.DOMDocument.3.0","Msxml2.DOMDocument","Microsoft.XmlDom"];
for(var i=0;i<signatures.length;i++)catch(e)
return null;
}
this.SelectNodes = function(xpath){
if (isIE)
return domDoc.selectNodes(xpath) ;
else{
var aNodeArray = new Array();
var xPathResult = domDoc.evaluate(xpath, domDoc, domDoc.createNSResolver(domDoc.documentElement), XPathResult.ORDERED_NODE_ITERATOR_TYPE, null) ;
if (xPathResult){
var oNode = xPathResult.iterateNext() ;
while(oNode){
aNodeArray[aNodeArray.length] = oNode ;
oNode = xPathResult.iterateNext();
}
}
return aNodeArray ;
}
}
this.addxml=function(doc,tagName,tagText){
var node=domDoc.createElement(tagName);
if(tagText!=null){
if(isIE)
node.text=tagText;
else
node.textContent=tagText;
}
doc=doc==null?domDoc:doc
doc.appendChild(node);
}
this.lookxml=function(){
if(isIE)
else{
var serializer=new XMLSerializer();
var xml=serializer.serializeToString(domDoc)
return xml
}
}
this.xva=function(xpath) //获取所有节点
this.o=function(xpath,n) //获取单个节点
this.xv=function(xpath,n)catch(e)} //获取单个节点内容
this.getText=function(obj) //获取节点的内容
this.getkey=function(obj,key) //获取节点属性
this.setText=function(obj,text) //设置节点内容
this.setkey=function(obj,key,text)

var domDoc=isIE?this.createDomDoc():document.implementation.createDocument("","",null) //创建对象
this.addxml(null,"root",null);
}
var xml=new CAJAX()
/*xml.addxml(xml.xva("/root")[0],"title","majiok2")
xml.addxml(xml.xva("/root")[0],"title","majiok2")
xml.setText(xml.o("//title"),"toLocaleLowerCaseX")
xml.setkey(xml.o("//title"),"id","maji")
*/
function oo(obj)
function addnode(){
var n=xml.xva("//root/item").length
xml.addxml(xml.o("/root"),"item",oo("content").value==""?"null":oo("content").value)
xml.setkey(xml.o("//item",n),"name",oo("name").value)
Ctable("//item")
}
function updatenode(n){
var obj=xml.o("//item",n)
xml.setText(obj,oo("content_"+n).value)
xml.setkey(obj,"name",oo("name_"+n).value)
alert("修改成功!")
}
function delnode(n,xpath){
var obj=xml.o(xpath,n)
obj.parentNode.removeChild(obj)
Ctable(xpath)
}
function Ctable(Xpath){
var str="<table width='90%' border='0' cellspacing='1' cellpadding='3' bgcolor='#333333'>\
<tr bgcolor='#E8F3FF'> \
<td>序号</td>\
<td>姓名(name)</td>\
<td>内容(content)</td>\
<td>操作</td>\
</tr>"
// try{
var a=xml.xva(Xpath)
if(a.length==0)
str+="<tr bgcolor='#FFFFFF'><td colspan=4>没有相关信息</td></tr></table>"
else{
for(var i=0;i<a.length;i++){
str+=" <tr bgcolor='#FFFFFF'> \
<td>"+(i+1)+"</td>\
<td><input id='name_"+i+"' value='"+xml.getkey(a[i],"name")+"'></td>\
<td><input id='content_"+i+"' value='"+xml.getText(a[i])+"'></td>\
<td><a href='javascript:updatenode("+i+")'>修改</a> <a href=javascript:delnode("+i+",'"+Xpath+"')>删除</td>\
</tr>"
}
str+="</table>"
}
oo("createTable").innerHTML=str
// }catch(e)
}
Ctable("//item")
</script>
角度H
2011-01-19 · TA获得超过124个赞
知道小有建树答主
回答量:138
采纳率:0%
帮助的人:83.7万
展开全部
<dataset>
<record>
<data>5</data>
<name>chen</name>
</record>
<record>
< data>4</data>
<name>sun</name>
</record>
<record>
<sex>f</sex>
<collor>yellow</collor>
</record>
<record>
<sex>m</sex>
<collor>black</collor>
</record>
</dataset>
应该是这样吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
神气说游戏
2011-01-19 · 超过36用户采纳过TA的回答
知道小有建树答主
回答量:166
采纳率:0%
帮助的人:101万
展开全部
<dataset>
<record>
<sex>f</sex>
<collor>yellow</collor>
</record>
<record>
<sex>m</sex>
<collor>black</collor>
</record>
<record>
<data>5</data>
<name>chen</name>
</record>
<record>
< data>4</data>
<name>sun</name>
</record>
</dataset>
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式