新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   XML论坛     W3CHINA.ORG讨论区     计算机科学论坛     SOAChina论坛     Blog     开放翻译计划     新浪微博  
 
  • 首页
  • 登录
  • 注册
  • 软件下载
  • 资料下载
  • 核心成员
  • 帮助
  •   Add to Google

    >> 关于 XML 的一般性技术讨论,提供 XML入门资料 和 XML教程
    [返回] 中文XML论坛 - 专业的XML技术讨论区XML.ORG.CN讨论区 - XML技术『 XML基础 』 → [求助]请教将XML的数据通过DOM接 口到HTML里正确显示的问题 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 3750 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: [求助]请教将XML的数据通过DOM接 口到HTML里正确显示的问题 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     judyzzcn 美女呀,离线,快来找我吧!
      
      
      等级:大一新生
      文章:4
      积分:81
      门派:XML.ORG.CN
      注册:2006/3/28

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给judyzzcn发送一个短消息 把judyzzcn加入好友 查看judyzzcn的个人资料 搜索judyzzcn在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看judyzzcn的博客楼主
    发贴心情 [求助]请教将XML的数据通过DOM接 口到HTML里正确显示的问题

    我目前碰到问题是XML中的数据(就是CHINA的图片及各图片下的文字:如中国-北京等)不能正确显示在HTML页中,我是利用DOM技术做的,以下是我的源程序,希望您能抽出您宝贵的时间帮我看下问题到底出在哪里, 真心的非常感谢!

    FirstPage.xml

    <?xml version="1.0" encoding=gb2312"?>
    <!--2008北京申奥实例首页文档-->
    <申奥2008>
      <网页主题>申办2008年奥运会</网页主题>
      <申奥城市>
         <城市>中国-北京</城市>
         <网页>SecondPage.html</网页>
      </申奥城市>
      <申奥城市>
         <城市>法国-巴黎</城市>
         <网页>France.html</网页>
      </申奥城市>
      <申奥城市>
         <城市>加拿大-多伦多</城市>
         <网页>Canada.html</网页>
      </申奥城市>
      <申奥城市>
         <城市>土耳其-伊斯坦布尔</城市>
         <网页>Turkish.html</网页>
      </申奥城市>  
      <申奥城市>
         <城市>日本-大阪</城市>
         <网页>Japan.html</网页>
      </申奥城市>  
    </申奥2008>

    FirstPage.html

    <HTML>
      <HEAD>
        <TITLE>2008北京申奥实例首页的基本框架</TITLE>
        <STYLE>
          @import url(FirstPage.css);
        </STYLE>
          <SCRIPT language="JavaScript" for="window" event="onload">
             <!-- 注释一: 载入XML文档FirstPage.xml -->
             var XMLdoc=new ActiveXObject("Microsoft.XMLDOM");
             XMLdoc.async="false";
             XMLdoc.load("FirstPage.xml");
             <!-- 注释二: 创建根节点对象实例 -->
             var XMLroot=XMLdoc.documentElement;
             <!-- 注释三: 提取关于北京的信息 -->
             L2_Nodegroup=XMLroot.childNodes;
             L2_Node1=L2_Nodegruop.item(1);
             L3_Nodegroup=L2_Node1.childNodes;
             L3_Nodeg0=L3_Nodegroup.item(0);
             L3_Nodeg1=L3_Nodegroup.item(1);
             str1=L3_Node0.text;
             str2=L3_Node1.text;
             Text1.innerHTML="<A id='A' href='"+srt2+"'>"+str1+"</A>";
             <!-- 注释四: 提取关于巴黎的信息 -->
             L2_Node2=L2_Nodegruop.item(2);
             L3_Nodegroup=L2_Node2.childNodes;
             L3_Nodeg0=L3_Nodegroup.item(0);
             str3=L3_Node0.text;
             L3_Nodeg1=L3_Nodegroup.item(1);
             str4=L3_Node1.text;
             Text2.innerHTML="<A id='A' href='"+srt4+"'>"+str3+"</A>";
             <!-- 注释五: 此处将放置提取其他三个申奥城市相关信息的脚本 -->
             for(var i=3;i<L2_Nodegroup.length;i++)
             {
               L2_Node3=L2_Nodegruop.item(i);
               L3_Nodegruop=L2_Node3.childNodes;
               L3_Node0=L3_Nodegroup.item(0);
               str5=L3_Node0.text;
               L3_Node1=L3_Nodegroup.item(1);
               str6=L3_Node1.text;
               switch(i)
               {
                 case 3:Text3.innerHTML="<A id='A1' href="+str6+">"+str5+"</A>;
                 case 4:Text4.innerHTML="<A id='A1' href="+str6+">"+str5+"</A>;
                 case 5:Text5.innerHTML="<A id='A1' href="+str6+">"+str5+"</A>;
                }
              }
          </SCRIPT>
        </HEAD>
        <BODY>
          <SPAN id="total">
            <DIV id="title1">2008 申奥</DIV>
            <DIV id="img"><IMG src="olympic.jpg"></DIV>
            <DIV id="title2">五大城市</DIV>
            <DIV id="China">
               <A href="SedondPage.html>/DIV>
                  <IMG src="China.jpg" width="200" height="140"/>
               </A>
            </DIV>
            <DIV id="France">
               <A href="France.html">
                  <IMG src="France.jpg" width="200" height="140"/>
               </A>
            </DIV>
            <DIV id="Canada">
               <A href="Canada.html">
                  <IMG src="Canada.jpg" width="200" height="140"/>
               </A>
            </DIV>
            <DIV id="Turkish">
               <A href="Turkish.html">
                  <IMG src="Turkish.jpg" width="200" height="140"/>
               </A>
            </DIV>
            <DIV id="Japan">
               <A href="Japan.html">
                  <IMG src="Japan.jpg" width="200" height="140"/>
               </A>
            </DIV>
            <DIV id="Text1"></DIV>
            <DIV id="Text2"></DIV>
            <DIV id="Text3"></DIV>
            <DIV id="Text4"></DIV>
            <DIV id="Text5"></DIV>
          </SPAN>
        </BODY>
    <HTML>


    FirstPage.css

    #total {display:block;
            position:absolute;
            top:5px;
            left:10px;
            width:760px;
            height:470px;}
    #title1,#title2,#img
    {display:block;
    position:absolute;
    font-family:华方楷体;
    font-size:28;
    font-weight:bold;
    letter-spacing:2;
    text-decoration:underling;
    color:purple;}
    #title1 {top:5%;left:27.5%}
    #title2 {top:5%;left:77.5%}
    #img {top:0%;left:52.5%}
    #China,#France,#Canada,#Turkish,#Japan
    {display:block;
    position:absolute;}
    #China {top:52.5%;left:45%}
    #France {top:20%;left:5%}
    #Canada {top:20%;left:85%}
    #Turkish {top:85%;left:5%}
    #Japan {top:85%;left:85%}
    #Text1,#Text2,#Text3,#Text3,#Text4,#Text5
    {display:block;
    position:absolute;}
    #Text1 {top:73%;left:41%;}
    #Text2 {top:36%;left:9%;}
    #Text3 {top:36%;left:77%;}
    #Text4 {top:90%;left:6%;}
    #Text5 {top:90%;left:79%;}


    附:我对_innerhtml 和src. span 等关键字不是很理解,另外把CSS源程序附上,不知道是不是在CSS里也有错误,这也是本人下周要交的程序.急死我了,调了很久都不出来.请各位高手指教!


       收藏   分享  
    顶(0)
      




    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/3/31 16:22:00
     
     Qr 帅哥哟,离线,有人找我吗?
      
      
      威望:9
      等级:博士二年级(版主)
      文章:4392
      积分:29981
      门派:XML.ORG.CN
      注册:2004/5/15

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给Qr发送一个短消息 把Qr加入好友 查看Qr的个人资料 搜索Qr在『 XML基础 』的所有贴子 访问Qr的主页 引用回复这个贴子 回复这个贴子 查看Qr的博客2
    发贴心情 
    首先说明,由于看不懂你的贴子的目的,只是修改代码以确保脚本正确。
    1、<?xml version="1.0" encoding="gb2312"?>

    2、都是一大堆低级错误,和你原贴比较着看吧,晕...,写JS,要学会调试!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    <HTML>
      <HEAD>
        <STYLE>
          @import url(FirstPage.css);
        </STYLE>
        <TITLE>2008北京申奥实例首页的基本框架</TITLE>
          <SCRIPT language="javascript" for="window" event="onload">
             <!-- 注释一: 载入XML文档FirstPage.xml -->
             var XMLdoc=new ActiveXObject("Microsoft.XMLDOM");
             XMLdoc.async=false;
             XMLdoc.load("FirstPage.xml");
             <!-- 注释二: 创建根节点对象实例 -->
             var XMLroot=XMLdoc.documentElement;
             <!-- 注释三: 提取关于北京的信息 -->
             L2_Nodegroup=XMLroot.childNodes;
             L2_Node1=L2_Nodegroup.item(1); //改

             L3_Nodegroup=L2_Node1.childNodes;
             L3_Nodeg0=L3_Nodegroup.item(0);
             L3_Nodeg1=L3_Nodegroup.item(1);
             str1=L3_Nodeg0.text;//改
             str2=L3_Nodeg1.text;//改
             Text1.innerHTML="<A id='A' href='"+str2+"'>"+str1+"</A>";//改

             <!-- 注释四: 提取关于巴黎的信息 -->
             L2_Node2=L2_Nodegroup.item(2); //改
             L3_Nodegroup=L2_Node2.childNodes;
             L3_Nodeg0=L3_Nodegroup.item(0);
             str3=L3_Nodeg0.text; //改
             L3_Nodeg1=L3_Nodegroup.item(1);
             str4=L3_Nodeg1.text; //改
             Text2.innerHTML="<A id='A' href='"+str4+"'>"+str3+"</A>"; //改
    alert(L2_Nodegroup.length)

             <!-- 注释五: 此处将放置提取其他三个申奥城市相关信息的脚本 -->
             for(var i=3;i<L2_Nodegroup.length;i++)
             {
               L2_Node3=L2_Nodegroup.item(i);//改
               L3_Nodegroup=L2_Node3.childNodes;//改
               L3_Node0=L3_Nodegroup.item(0);
               str5=L3_Node0.text;
               L3_Node1=L3_Nodegroup.item(1);
               str6=L3_Node1.text;
               switch(i)
               {
                 case 3:Text3.innerHTML="<A id='A1' href="+str6+">"+str5+"</A>"; //改
                 case 4:Text4.innerHTML="<A id='A1' href="+str6+">"+str5+"</A>"; //改
                 case 5:Text5.innerHTML="<A id='A1' href="+str6+">"+str5+"</A>"; //改
                }
              }

          </SCRIPT>
        </HEAD>
        <BODY>
          <SPAN id="total">
            <DIV id="title1">2008 申奥</DIV>
            <DIV id="img"><IMG src="olympic.jpg"></DIV>
            <DIV id="title2">五大城市</DIV>
            <DIV id="China">
               <A href="SedondPage.html>/DIV>
                  <IMG src="China.jpg" width="200" height="140"/>
               </A>
            </DIV>
            <DIV id="France">
               <A href="France.html">
                  <IMG src="France.jpg" width="200" height="140"/>
               </A>
            </DIV>
            <DIV id="Canada">
               <A href="Canada.html">
                  <IMG src="Canada.jpg" width="200" height="140"/>
               </A>
            </DIV>
            <DIV id="Turkish">
               <A href="Turkish.html">
                  <IMG src="Turkish.jpg" width="200" height="140"/>
               </A>
            </DIV>
            <DIV id="Japan">
               <A href="Japan.html">
                  <IMG src="Japan.jpg" width="200" height="140"/>
               </A>
            </DIV>
            <DIV id="Text1"></DIV>
            <DIV id="Text2"></DIV>
            <DIV id="Text3"></DIV>
            <DIV id="Text4"></DIV>
            <DIV id="Text5"></DIV>
          </SPAN>
        </BODY>
    <HTML>

    ----------------------------------------------
    没人帮忙,那就靠自己,自己才是最好的老师!本人拒绝回答通过站内短消息提出的问题!

    blog:http://Qr.blogger.org.cn

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/4/2 19:07:00
     
     judyzzcn 美女呀,离线,快来找我吧!
      
      
      等级:大一新生
      文章:4
      积分:81
      门派:XML.ORG.CN
      注册:2006/3/28

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给judyzzcn发送一个短消息 把judyzzcn加入好友 查看judyzzcn的个人资料 搜索judyzzcn在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看judyzzcn的博客3
    发贴心情 
    1.非常感谢Qr对我的指教,但是我有点不明白的是,在语句旁边的"//改"是表示Qr已改好的语句还是要我自己再改正?因为我对了下我原程序,好象没有改动哦/
    2.另外我在DREAMWAVE中调试程序时,发现系统提示"for标签不被Script系统支持!"event标签不被Script系统支持!"不知是因为什么问题出现此提示?

    请指教!

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/4/6 13:30:00
     
     Qr 帅哥哟,离线,有人找我吗?
      
      
      威望:9
      等级:博士二年级(版主)
      文章:4392
      积分:29981
      门派:XML.ORG.CN
      注册:2004/5/15

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给Qr发送一个短消息 把Qr加入好友 查看Qr的个人资料 搜索Qr在『 XML基础 』的所有贴子 访问Qr的主页 引用回复这个贴子 回复这个贴子 查看Qr的博客4
    发贴心情 
    1、如果你近视的话,请戴眼镜,如果一副不够,多戴一副。开玩笑的:)已改好。
    2、偶从来不用DW。直接运行HTM文件看效果。

    ----------------------------------------------
    没人帮忙,那就靠自己,自己才是最好的老师!本人拒绝回答通过站内短消息提出的问题!

    blog:http://Qr.blogger.org.cn

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/4/6 13:46:00
     
     judyzzcn 美女呀,离线,快来找我吧!
      
      
      等级:大一新生
      文章:4
      积分:81
      门派:XML.ORG.CN
      注册:2006/3/28

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给judyzzcn发送一个短消息 把judyzzcn加入好友 查看judyzzcn的个人资料 搜索judyzzcn在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看judyzzcn的博客5
    发贴心情 
    呵呵,我知道了,但还是想请Qr指点下迷津:我在调试程序时,程序并不能真正用JS实现DOM接口,即并不能真正访问到DOM对XML文档形成的节点树中节点.(文本内容并不显示),用DW调试就给出提示"for标签不被Script系统支持!"event标签不被Script系统支持!"
    用IE运行,也是一样的结果,即图片能出现,但文字(如"中国-北京"等节点的文本内容)并不出现.

    请指教!

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/4/6 16:14:00
     
     judyzzcn 美女呀,离线,快来找我吧!
      
      
      等级:大一新生
      文章:4
      积分:81
      门派:XML.ORG.CN
      注册:2006/3/28

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给judyzzcn发送一个短消息 把judyzzcn加入好友 查看judyzzcn的个人资料 搜索judyzzcn在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看judyzzcn的博客6
    发贴心情 
    比如我再给出一个更简单的例子,

    XML文档如下:

    ?xml version="1.0" encoding="gb2312"?>
    <!-- 作为操作对象的XML文档 -->
    <根元素>
      <第2层>
         <第3层>我是第三层元素集合中的第一个元素</第3层>
         <第3层>我是第三层元素集合中的第二个元素</第3层>
      </第2层>
    </根元素>


    HTML文档如下:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
    <html>
      <head>
      <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
        <title>使用XML DOM对象的属性示例一</title>
     <script language="javascript" for="window" event="onload">
     <!-- 注释一:创建文档对象 -->
        var XMLdoc=new ActiveXObject("Microsoft.XMLDOM");
        XMLdoc.async="false";
        XMLdoc.load("Example1.xml");
        <!-- 注释二:提取文档对象实例XMLdoc及其第一个节点中数据的脚本 -->
        L1_Nodegroup=XMLdoc.childNodes;
        L1_Node0=L1_Nodegroup.item(0);
        Text0.innerText=XMLdoc.text;
        Text1.innerText=L1_Node0.text;
        <!-- 注释三:提取根节点对象实例XMLroot及其下一层节点对象数据的脚本 -->
        XMLroot=XMLdoc.documentElement;
        L2_Nodegroup=XMLroot.childNodes;
           L2_Node0=L2_Nodegroup.item(0);
        L2_Node1=L2_Nodegroup.item(1);
        Text2.innerText=XMLroot.text;
        Text3.innerText=L2_Node0.text;
        Text4.innerText=L2_Node1.text;
     </script>
      </head>
      <body>
         <H3 align="center">使用XML DOM 对象的属性示例一<HR/></H3>
      <H4> 整个文档中的文本内容;</H4>
      <DIV id="Text0" style="color:red;"></DIV>
      <H4> 文档对象实例XMLdoc第一个节点中的内容:</H4>
      <DIV id="Text1" style="color:blue;"></DIV>
      <H4> 根节点对象实例XMLroot中的全部文本内容:</H4>
      <DIV id="Text2" style="color:red;"></DIV>
         <H4> 根节点对象实例XMLroot下第一个节点中的全部文本内容:</H4>
      <DIV id="Text3" style="color:blue;"></DIV>
      <H4> 根节点对象实例XMLroot下第二个节点中的全部文本内容:</H4>
      <DIV id="Text4" style="color:red;"></DIV>
      </body>
    </html>


    运行结果是:

    整个文档中的文本内容:

    我是第三层元素集合中的第一个元素 我是第三层元素集合中的第二个元素

    文档对象实例XMLdoc第一个节点中的内容:

    version="1.0" encoding="gb2312"(正确显示)

    根节点对象实例XMLroot中的全部文本内容:

    我是第三层元素集合中的第一个元素 我是第三层元素集合中的第二个元素

    根节点对象实例XMLroot下第一个节点中的全部文本内容:

    我是第三层元素集合中的第一个元素 我是第三层元素集合中的第二个元素
    (多了"我是第三层元素集合中的第二个元素")

    根节点对象实例XMLroot下第二个节点中的全部文本内容:
    (这里缺了"我是第三层元素集合中的第二个元素")


    因为上面的例子有点复杂,所以就找了一个更简单的例子,
    程序在DW中调试是就出现"

    目标浏览器检查:  for标签不被Script系统支持!    event标签不被Script系统支持!  "

    请高手Qr指点迷津!  非常感谢!

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/4/6 16:27:00
     
     feirate 帅哥哟,离线,有人找我吗?
      
      
      威望:4
      等级:大三暑假(参加全国数模竞赛拿了一等奖)
      文章:155
      积分:749
      门派:XML.ORG.CN
      注册:2006/3/24

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给feirate发送一个短消息 把feirate加入好友 查看feirate的个人资料 搜索feirate在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看feirate的博客7
    发贴心情 
    似乎在DW里面会提示,但是不影响程序运行阿...
    不要用DW运行就好了,用高级文本编辑器..Editplus之类的
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/4/6 18:19:00
     
     judyzzcn 美女呀,离线,快来找我吧!
      
      
      等级:大一新生
      文章:4
      积分:81
      门派:XML.ORG.CN
      注册:2006/3/28

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给judyzzcn发送一个短消息 把judyzzcn加入好友 查看judyzzcn的个人资料 搜索judyzzcn在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看judyzzcn的博客8
    发贴心情 
    . O .

    THANKS !

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/4/8 14:13:00
     
     xpfwhut 帅哥哟,离线,有人找我吗?
      
      
      等级:大一(高数修炼中)
      文章:20
      积分:123
      门派:XML.ORG.CN
      注册:2006/4/21

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给xpfwhut发送一个短消息 把xpfwhut加入好友 查看xpfwhut的个人资料 搜索xpfwhut在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看xpfwhut的博客9
    发贴心情 
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/4/24 21:45:00
     
     GoogleAdSense
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 XML基础 』的所有贴子 访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2025/10/10 14:06:55

    本主题贴数9,分页: [1]

    管理选项修改tag | 锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告
    W3C Contributing Supporter! W 3 C h i n a ( since 2003 ) 旗 下 站 点
    苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
    5,316.406ms