0

我在PhoneGap中使用xui js,我想通过xui js读取xml。我已经编写了一些代码,并且我成功获取了root Element。并且为每个元素运行forloop我也得到了能够显示textContent的元素。但是我我无法在元素的标签内获取更多元素。我怎样才能得到它。我的代码如下:

    xui(window).on('load', function(){
        var url="http://www.w3schools.com/dom/books.xml";
        fireURL(url,winner);
    });

    function fireURL(url,success)
    {   
        var option={
        async:true,
        callback:function(){
            success(this.responseText);
        }
        }
        x$().xhr(url,option);
    } 

   function winner(data)
    {    
         domParser = new DOMParser();
         var xmlDoc=domParser.parseFromString(data,"text/xml");

        x$(xmlDoc).find("book").each(function(element,index){
            alert(element.textContent);
            //Here I want to get further elements by its tag name
        });
    }
4

1 回答 1

0

您可以轻松地使用 javascript。从这里获取参考

或用以下代码替换您的成功代码:-

        function winner(data)
    {    
         domParser = new DOMParser();
         var xmlDoc=domParser.parseFromString(data,"text/xml");

         var _bookStore=[];

        x$(xmlDoc).find("book").each(function(element,index){
              var _book={};
              _book.author=[];
              _book.title=element.getElementsByTagName("title")[0].textContent;
              for(j=0;j<element.getElementsByTagName("author").length;j++){
                  _book.author.push(element.getElementsByTagName("author")[j].textContent);
              }
              _book.year=element.getElementsByTagName("year")[0].textContent;
              _book.price=element.getElementsByTagName("price")[0].textContent;
              _bookStore.push(_book);
        });

         alert("hello"+JSON.stringify(_bookStore));
    }
于 2013-04-18T08:15:26.197 回答