• 企业400电话
  • 网络优化推广
  • AI电话机器人
  • 呼叫中心
  • 全 部 栏 目

    网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Dom遍历XML的一个例子,结果为树状结构
    POST TIME:2021-10-18 07:07
    knowledge.XML文件
    复制代码 代码如下:
    ?xml version="1.0" encoding="gb2312"?> 
    ?xml:stylesheet type="text/xsl" href="knowledge.xsl"?> 
    Ebaihe name="Ebaihe" type="gs" id="gs000"> 
    知识管理 name="知识管理" type="rt" id="rt000"> 
      目录 name="vc++" type="ml" id="ml003"/> 
      目录 name="asp" type="ml" id="ml001"> 
         知识 name="什么是ASP 1" type="zs" id="zs001"> 
            title>什么是ASP/title> 
            author>cxx/author> 
            adddate>2001-02-20/adddate> 
            content>ASP:Active Server Page/content> 
         /知识> 
         知识 name="什么是ASP 2" type="zs" id="zs002"> 
            title>什么是ASP/title> 
            author>cxx/author> 
            adddate>2001-02-20/adddate> 
            content>ASP:Active Server Page/content> 
         /知识> 
      /目录> 
      目录 name="vbs" type="ml" id="ml002"> 
         知识 name="什么是vbs 1" type="zs" id="zs003"> 
            title>什么是ASP/title> 
            author>cxx/author> 
            adddate>2001-02-20/adddate> 
            content>ASP:Active Server Page/content> 
         /知识> 
         知识 name="什么是vbs 2" type="zs" id="zs004"> 
            title>什么是ASP/title> 
            author>cxx/author> 
            adddate>2001-02-20/adddate> 
            content>ASP:Active Server Page/content> 
         /知识> 
      /目录> 
    /知识管理> 
    留言簿 name="留言簿" type="ly" id="ly000"> 
      单元 name="你好" type="dy" id="dy001"> 
         留言 name="Who are you" type="zs" id="zs005"> 
            title>什么是ASP/title> 
            author>cxx/author> 
            adddate>2001-02-20/adddate> 
            content>ASP:Active Server Page/content> 
         /留言> 
         留言 name="你好" type="zs" id="zs006"> 
            title>什么是ASP/title> 
            author>cxx/author> 
            adddate>2001-02-20/adddate> 
            content>ASP:Active Server Page/content> 
         /留言> 
      /单元> 
      单元 name="我的留言" type="dy" id="dy003"/> 
    /留言簿> 
    留言簿 name="留言簿" type="ly" id="ly001"/> 
    /Ebaihe> 

    bianli.asp文件

    复制代码 代码如下:
    % @LANGUAGE=VBScript%> 

    function getimgstr(ttid,ttname,ttlvl,tttype,ttlf,ttlstr) 
       dim ttstr1 
       if ttlvl=0 then 
             ttstr1=ttstr1  "a href="  chr(34)  "#"  chr(34)  
             ttstr1=ttstr1  " onclick="  chr(34)  "call OnClickDiv('"  ttid  "','"  "2"  "')"  
             ttstr1=ttstr1  chr(34)  ">"  
             ttstr1= ttstr1  "img border="  chr(34)  "0"  chr(34)  " src="  chr(34)  
             ttstr1= ttstr1  "image/Computer.gif"  chr(34)  " height=16>"  "/a>" 
             ttstr1=ttstr1  "a href="  chr(34)  "#"  chr(34)  
             ttstr1=ttstr1  " onclick="  chr(34)  "call OnClickDiv('"  ttid  "','"  "2"  "')" 
             ttstr1=ttstr1  chr(34)  ">"  
             ttstr1=ttstr1  ttname  "/a>br>"  vbcrlf 
             ttstr1=ttstr1  "div id="  chr(34)  ttid  chr(34)  " style=display:none>"  vbcrlf 
       else 
          for i= 2 to len(ttlstr)-1 
             if mid(ttlstr,i,1)="1" then 
                ttstr1 = ttstr1  "img border="  chr(34)  "0"  chr(34)  " src="  chr(34)  
                ttstr1 = ttstr1  "image/I-line.gif"  chr(34)  " height=16>" 
             end if 
             if mid(ttlstr,i,1)="0" then 
                ttstr1 = ttstr1  "img border="  chr(34)  "0"  chr(34)  " src="  chr(34)  
                ttstr1 = ttstr1  "image/none.gif"  chr(34)  " height=16>" 
             end if 
          next 
          if tttype=1 then 
             ttstr1= ttstr1  "a href="  chr(34)  "#"  chr(34)  
             ttstr1=ttstr1  " onclick="  chr(34)  "call OnClickDiv('"  ttid  "','"  ttlf  "')" 
             ttstr1=ttstr1  chr(34)  ">"  
             ttstr1=ttstr1  "img border="  chr(34)  "0"  chr(34)  " src="  chr(34)  
             if ttlf=0 then 
                ttstr1= ttstr1  "image/T-plus.gif"  chr(34)  " id="  chr(34)  "l-"  ttid  chr(34)  "  
    height=16>/a>" 
             else 
                ttstr1= ttstr1  "image/l-plus.gif"  chr(34)  " id="  chr(34)  "l-"  ttid  chr(34)  "  
    height=16>/a>" 
             end if 
             ttstr1= ttstr1  "a href="  chr(34)  "#"  chr(34)  
             ttstr1=ttstr1  " onclick="  chr(34)  "call OnClickDiv('"  ttid  "','"  ttlf  "')" 
             ttstr1=ttstr1  chr(34)  ">"  
             ttstr1=ttstr1  "img border="  chr(34)  "0"  chr(34)  " src="  chr(34)  
             ttstr1= ttstr1  "image/c-fold.bmp"  chr(34)  " id="  chr(34)  "p-"  ttid  chr(34)  "  
    height=16>/a>" 
             ttstr1= ttstr1  "a href="  chr(34)  "#"  chr(34)  
             ttstr1=ttstr1  " onclick=" chr(34)  "call OnClickDiv('"  ttid  "','"  ttlf  "')" 
             ttstr1=ttstr1  chr(34)  ">"  
             ttstr1=ttstr1  ttname  "/a>br>"  vbcrlf 
             ttstr1=ttstr1  "div id="  chr(34)  ttid  chr(34)  " style=display:none>"  vbcrlf 
          else 
             ttstr1 = ttstr1  "img border="  chr(34)  "0"  chr(34)  " src="  chr(34)  
             if ttlf=0 then 
                ttstr1 = ttstr1  "image/t-line.gif"  chr(34)  " height=16>" 
             else 
                ttstr1 = ttstr1  "image/l-line.gif"  chr(34)  " height=16>" 
             end if 
             ttstr1= ttstr1  "a href="  chr(34)  "#"  chr(34)  
             ttstr1=ttstr1  " onclick="  chr(34)  "call OnClickDiv('"  ttid  "','3')" 
             ttstr1=ttstr1  chr(34)  ">"  
             ttstr1=ttstr1  "img border="  chr(34)  "0"  chr(34)  " src="  chr(34)  
             ttstr1= ttstr1  "image/leaf.bmp "  chr(34)  " id="  chr(34)  "p-"  ttid  chr(34)  "  
    height=16>/a>" 
             ttstr1= ttstr1  "a href="  chr(34)  "#"  chr(34)  
             ttstr1=ttstr1  " onclick="  chr(34)  "call OnClickDiv('"  ttid  "','3')" 
             ttstr1=ttstr1  chr(34)  ">"  
             ttstr1=ttstr1  ttname  "/a>br>"  vbcrlf 
             ttstr1=ttstr1  "div id="  chr(34)  ttid  chr(34)  " style=display:none>/div>"  vbcrlf 
          end if 
       end if  
       getimgstr=ttstr1  
    end function 
    Function ShowNode(node,mylvl,myleaf,mylstr) 
       dim ttstr 
       dim mystr  
       dim ttleaf 
       dim ttn 
       ttn=0 
       if myleaf=0 then 
          ttleaf=0 
       else 
          ttleaf=1 
       end if 
    For Each child In node.childNodes 
        ttn=ttn+1 
        If (child.nodeType=1) Then  
           nod_name=child.Attributes.getnamedItem("name").Text  
           nod_type=child.Attributes.getnamedItem("type").Text 
           nod_id=child.Attributes.getnamedItem("id").Text 
           if nod_type>"zs" then 
              If (child.hasChildNodes) Then 
                 if ttn=node.childnodes.length then 
                    mystr=mystr  getimgstr(nod_id,nod_name,mylvl,1,1,mylstr  "0") 
                    ttstr=ShowNode(child,mylvl+1,1,mylstr  "0") 
                 else 
                    mystr=mystr  getimgstr(nod_id,nod_name,mylvl,1,0,mylstr  "1") 
                    ttstr=ShowNode(child,mylvl+1,0,mylstr  "1") 
                 end if 
                 mystr=mystr  ttstr 
                 mystr=mystr  "/div>" 
              else 
                 if ttn=node.childnodes.length then 
                    mystr=mystr  getimgstr(nod_id,nod_name,mylvl,0,1,mylstr  "0") 
                 else 
                    mystr=mystr  getimgstr(nod_id,nod_name,mylvl,0,0,mylstr  "1") 
                 end if 
              End If 
           else 
              if ttn=node.childnodes.length then 
                 mystr=mystr  getimgstr(nod_id,nod_name,mylvl,0,1,mylstr  "0") 
              else 
                 mystr=mystr  getimgstr(nod_id,nod_name,mylvl,0,0,mylstr  "1") 
              end if 
           end if 
        end if 
    Next 
    ShowNode=mystr 
    End Function 
      dim xmldoc 
      dim xmlstr 
      Set xmldoc = Server.CreateObject("Microsoft.XMLDOM") 
      xmldoc.async=false 
      xmldoc.load(Server.MapPath("knowledge.xml")) 
      xmlstr=ShowNode(xmldoc,0,0,"") 
    '  set xmldoc=nothing 
    'parent.results.display(source.transformNode(style)); 
    %> 
    html> 

    head> 
    /head> 

    body> 
    script language="VBScript"> 

    dim olditem 

    sub OnClickDiv(DivId,pType) 
       if (document.all(DivId).style.display="none") then 
          document.all(DivId).style.display="" 
          if (pType="0") then 
            document.all("l-"+DivId).src="image/t-minus.gif" 
            document.all("p-"+DivId).src="image/o-fold.bmp" 
          end if 
          if (pType="1") then 
            document.all("l-"+DivId).src="image/l-minus.gif" 
            document.all("p-"+DivId).src="image/o-fold.bmp" 
          end if 
          'if (pType="3") then 
          '  document.all("p-"+DivId).src="image/o-fold.bmp" 
          'end if 
       else 
          document.all(DivId).style.display="none"  
          if (pType="0") then 
            document.all("l-"+DivId).src="image/t-plus.gif" 
            document.all("p-"+DivId).src="image/c-fold.bmp" 
          end if 
          if (pType="1") then 
             document.all("l-"+DivId).src="image/l-plus.gif" 
             document.all("p-"+DivId).src="image/c-fold.bmp" 
          end if 
          'if (pType="3") then 
          '  document.all("p-"+DivId).src="image/c-fold.bmp" 
          'end if 
        end if 
    end sub 
    /script> 
    font name="宋体" size="2"> 
    nobr>%=xmlstr%>/nobr>/font> 
    /body>
    您可能感兴趣的文章:
    • jQuery实现遍历XML节点和属性的方法示例
    • python xml.etree.ElementTree遍历xml所有节点实例详解
    • php遍历解析xml字符串的方法
    • java遍历读取xml文件内容
    • ajax遍历xml文档的方法
    • PHP遍历XML文档所有节点的方法
    • python目录操作之python遍历文件夹后将结果存储为xml
    • asp.net Linq To Xml上手Descendants、Elements遍历节点
    • Xml中使用foreach遍历对象实现代码
    上一篇:PJBLOG使用技巧
    下一篇:如何回到先前的页面的方法多中语言 原创
  • 相关文章
  • 

    关于我们 | 付款方式 | 荣誉资质 | 业务提交 | 代理合作


    © 2016-2020 巨人网络通讯

    时间:9:00-21:00 (节假日不休)

    地址:江苏信息产业基地11号楼四层

    《增值电信业务经营许可证》 苏B2-20120278

    X

    截屏,微信识别二维码

    微信号:veteran88

    (点击微信号复制,添加好友)

     打开微信