服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

javascript+dom访问xml文件数据实例


  1.生成xml文件。
  
  在ado里,用recordset.save方法可以保存查询内容至指定xml文件,这样生成的文件里面有很多内容是关于数据表的属性的,即<s:schema></s:schema>节点内容。我们需要的是<rs:data></rs:data>节点的内容。结构大体如下:data.xml
  <xml ...>
  <s:schema>
  ...
  </s:schema>
  <rs:data>
  <z:row positionid='1001' positionname='fdsafsd' companyid='1' pmid='1001' />
  <z:row positionid='1002' positionname='.net developer' companyid='2' pmid='1002' />
  </rs:data>
  
  这里的<z:row />即为一个数据行,下一步就是显示这部分内容。
  
  2.loadxml文件。
  
  <script language=javascript>
  var xmldoc = new activexobject("microsoft.xmldom");
  var currnode;
  xmldoc.async = false;
  xmldoc.load("data.xml");
  if (xmldoc.parseerror.errorcode != 0) {//如果打开文件出错
  var myerr = xmldoc.parseerror;
  document.write("you have error " + myerr.reason);
  }
  else
  {
  document.write("<hr size=1>");
  xmldoc.setproperty("selectionlanguage", "xpath");
  currnode = xmldoc.documentelement.childnodes[1];//取得<rs:data>部分
  alert(currnode.childnodes[0].attributes[0].value);//测试结果
  
  for(i=0;i<currnode.childnodes.length;i++) //遍历每个'数据行'
  {
  for(j=0;j<currnode.childnodes[i].attributes.length;j++)//遍历行的每个属性
  {
  document.write(currnode.childnodes[i].attributes[j].name + " : " + currnode.childnodes[i].attributes[j].value + "<br>");
  }
  document.write("<hr size=1>");
  }
  }
  </script>

扫描关注微信公众号