以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 DOM/SAX/XPath 』  (http://bbs.xml.org.cn/list.asp?boardid=11)
----  怎样使用DOM显示成绩单??急~  (http://bbs.xml.org.cn/dispbbs.asp?boardid=11&rootid=&id=34673)


--  作者:魔法蛋糕
--  发布时间:6/21/2006 10:39:00 AM

--  怎样使用DOM显示成绩单??急~
我对DOM知之甚少,不知道怎么使用DOM显示XML中的成绩单数据。
我的XML是
<?xml version="1.0" encoding="gb2312"?>
<reportcard>
 <personal>
  <name>Kate</name>
  <subject>
   <Chinese>96</Chinese>
   <English>100</English>
   <Maths>85</Maths>
   <Chemistry>94</Chemistry>
  </subject>
 </personal>
 <personal>
  <name>John</name>
  <subject>
   <Chinese>100</Chinese>
   <English>74</English>
   <Maths>95</Maths>
   <Chemistry>86</Chemistry>
  </subject>
 </personal>
 <personal>
  <name>Tom</name>
  <subject>
   <Chinese>79</Chinese>
   <English>97</English>
   <Maths>91</Maths>
   <Chemistry>84</Chemistry>
  </subject>
 </personal>
</reportcard>
如果想在HTML中只显示每个同学的总成绩,可以用DOM实现吗?怎么做?
谢谢各位高手啦~~
--  作者:Qr
--  发布时间:6/21/2006 1:01:00 PM

--  
<script>
var objXMLDoc = new ActiveXObject("MSXML.DOMDocument");  
objXMLDoc.async = false;
objXMLDoc.load("1.xml");
var str = "";
var cnt;
var onode = objXMLDoc.getElementsByTagName("personal");
for(i=0;i<onode.length;i++){
 cnt=0;
 for(j=0;j<4;j++){cnt+=parseInt(onode(i).childNodes(1).childNodes(j).text)}
 str += onode(i).childNodes(0).text+":"+cnt+"\n";
}
alert(str);
</script>
--  作者:魔法蛋糕
--  发布时间:6/21/2006 8:45:00 PM

--  
刚打开电脑,就看到有高手指点
多谢多谢啊~~~
--  作者:DamYankee
--  发布时间:7/12/2006 8:02:00 AM

--  
这样也行,学习了!!!
--  作者:bossycrab
--  发布时间:7/18/2006 4:01:00 PM

--  
受启迪了!
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
93.750ms