XML 学习(五) xPath例子

XML 学习(五) xPath例子
xPathTest.html(测试页面)
其中loadxmldoc.js和book.xml 和 XML 学习(三) DOM 解析- Node 对象的属性 一篇中一样;
< html >
    
< head >
        
< script src = " ../loadxmldoc.js " ></ script >
        
< script >
            
var  xmlDoc  =  loadXMLDoc( " ../book/book.xml " );
            
// 只有XML解析器的一个实例才能调用 selectNodes() ???
             var  x = xmlDoc.selectNodes( " /bookstore/book " ); // bookstore元素下的所有book子元素
             // var x=xmlDoc.selectNodes("bookstore");//获得bookstore元素
             // var x=xmlDoc.selectNodes("book");//什么都没获得????        
             // var x=xmlDoc.selectNodes(".");//获得当前元素,
             // var x=xmlDoc.selectNodes("node()");//获得 所有元素,包括文档声明;

            
// var x=xmlDoc.selectNodes("//author");//获得文档中所有的author元素;
             // var x=xmlDoc.selectNodes("/bookstore/book[2]/author[2]");//bookstore第三个book子元素的第三个author元素
             // var x=xmlDoc.selectNodes("//@category");//获得有属性category的所有元素
             // var x=xmlDoc.selectNodes("/bookstore/book[last()]");//position()<3 报错 函数不存在???

            
// var x=xmlDoc.selectNodes("/bookstore/book[@category='WEB']/author");
             // bookstore的子元素中category属性为WEB的所有book元素的author元素
            
            
// var x=xmlDoc.selectNodes("/bookstore/book/*");//bookstore子元素中book的所有子元素
             // var x=xmlDoc.selectNodes("//*");//获得文档元素

            
// var x=xmlDoc.selectNodes("//title | //price");//所有的title元素和所有的price元素
        
            
for (i = 0 ;i < x.length;i ++ )
            {
                document.write(
" <xmp> "   +  x.item(i).xml  +   " </xmp> " );
                document.write(
" <br/> " );
            }             
        
</ script >
    
</ head >
</ html >

其中主要用到了 xPath 语法和少量的运算符;
关于坐标轴,函数测试都报错;

你可能感兴趣的:(XML 学习(五) xPath例子)