网站首页  汉语字词  英语词汇  考试资料  写作素材  旧版资料

请输入您要查询的范文:

 

标题 hta实现的笨狼树状节点查看器
范文
    <html>
    <head>
    <style>
    table
    {
        border-collapse: collapse;
        border-width: 4; 
        border-style: double; 
        border-color:#15336F;
        font-size:12px;
    }
    body
    {
        font-size:12px;
    }
    div
    {
        width:100%;
        height:9; 
        border-style:solid; 
        border-width:1; 
        border-color:#eeeeee;    
        vertical-align:top;
        font-size:12;
        cursor:hand;
    }
    </style>
    <title>笨狼树状节点查看器</title>
    </head>
    <body>
     <INPUT type="file" id=file1 name=file1>请输入xml文件路径
     <INPUT type="button" value="确定" onclick = "vbs:analyse ">
     <SELECT id="select1" onchange="vbs:analyse">
            <OPTION value="nodeName" >显示标签</OPTION>
            <OPTION  value="text" >显示文字</OPTION>
            <OPTION  value="attribute" >显示属性</OPTION>
            <OPTION  value="XPath" >显示XPath</OPTION>
    </SELECT>
    <DIV id="oList" style="padding-left:0"></DIV>
    </body>
     <script language="vbScript" >
        '**************************************
        '****作者:    超级大笨狼 superdullwolf****
        '**************************************        
            public dic,favour,anything    ,doc      
            set doc = CreateObject("Microsoft.XMLDOM")        
            doc.async=False
        sub analyse()
                dim myTR 
                favour = select1.value
                removeDIV  
                if not doc.load(file1.value) then 
                    alert "文件加载失败,请检查文件是否存在!"    
                else
                    Set rootNode = doc.DocumentElement
                    set rootDIV = document.createElement("DIV")    
                    rootDIV.setAttribute "XPath",rootNode.nodeName 
                    oList.setAttribute "XPath",rootNode.nodeName                  
                    oList.setAttribute "parsed",false
                    appendDIV     oList,rootNode    
                end if
        end sub
        sub appendDIV(myDIV,myNode)    
            dim myChild    ,newDIV,ChildID,thisID ,ChildXPath
            
            for each myChild in myNode.childNodes
                if     myChild.nodeName <> "#text"    then    
                    set newDIV = document.createElement("DIV")            
                    myDIV.appendChild    newDIV            
                    addPx newDIV, myDIV,10    '缩进10象素
                    ChildID = 0
                    ChildXPath = myDIV.getAttribute("XPath") & "/" & myChild.nodeName & "[" & ChildID & "]"    
                    do while not doc.selectSingleNode(ChildXPath) is myChild
                        ChildID=ChildID+1
                        ChildXPath = myDIV.getAttribute("XPath") & "/" & myChild.nodeName & "[" & ChildID & "]"    
                    loop
                    newDIV.setAttribute "XPath",ChildXPath 
                    newDIV.setAttribute "parsed",false    '子元素还没标记过了。
                    newDIV.title = newDIV.getAttribute("XPath") 
                    newDIV.innerText = getText(myChild,newDIV) 
                    if myChild.childNodes.length>0 then 
                            newDIV.attachEvent "onclick",GetRef("attachOnclick")
                    end if
                end if                     
            next
            myDIV.setAttribute "parsed",true'所有子元素都标记过了。
        end sub    
        sub removeDIV()             
            dim oldDIV
            for each  oldDIV in   oList.childNodes          
                   oldDIV.removeNode(true)             
             next     
        end sub
        sub attachOnclick()
            dim obj    ,nodeXPath,cDIV
            set obj=window.event.srcElement 
            nodeXPath = obj.getAttribute("XPath")
            if instr(nodeXPath,"#text") >0 then 
                window.event.cancelBubble = true
                exit sub
            end if
            if not obj.getAttribute("parsed")= true then     
                 appendDIV obj ,doc.selectSingleNode(nodeXPath)
            else
                for each cDIV in obj.children
                    if cDIV.style.display = "none" then
                        cDIV.style.display = ""
                    else
                        cDIV.style.display = "none"
                    end if
                next
            end if
            window.event.cancelBubble = true         
        end sub
        function getText(myNode,oDIV)
            dim myAttribute
            getText = ""
            select case favour
                case "text"
                    if not isnull(myNode.text) then
                        getText = myNode.text
                     else
                        getText = "空文字"
                     end if            
                case "nodeName"                 
                        getText = myNode.nodeName    
                case "attribute"    
                    if myNode.nodeName <>"#text" then
                        for each myAttribute in  myNode.attributes                         
                            getText =getText &  myAttribute.name
                            getText = getText & "=" & chr(34) 
                            getText = getText & myAttribute.value  & chr(34) & " "
                        next
                        getText = trim(getText)
                    end if
                 
                case "XPath"
                    getText = oDIV.title
            end select
            if trim(getText) ="" then getText ="空"
        end function
        sub addPx(newDIV,oldDIV,num)
            dim re,myString    
            set re = new RegExp
            re.Global = true
            re.Pattern = "[^\d]*"            
            myString =  re.Replace(oldDIV.style.paddingLeft, "")
            if myString ="" then myString = "0"
            myString = (cint(myString) + num ) & "px"
            newDIV.style.paddingLeft = myString
            set re = nothing
        end sub
     </script>
    </html>
随便看

 

在线学习网范文大全提供好词好句、学习总结、工作总结、演讲稿等写作素材及范文模板,是学习及工作的有利工具。

 

Copyright © 2002-2024 cuapp.net All Rights Reserved
更新时间:2025/5/14 6:50:34