【问题标题】:loop through xml-result循环通过 xml-result
【发布时间】:2011-12-07 23:53:40
【问题描述】:

我正在尝试遍历 httpservice 的结果,它是 xml。

这是我尝试这样做的方式,但这不起作用。我错过了什么?

protected function getArtistsSucces(event:ResultEvent):void
    {
        var artistList:XMLList = XMLList(event.result);
        var artistXML:XML;
        for each(artistXML in artistList.artists)
        {
            var artistName:String = artistXML.artist.name;
            var artistPic:String = artistXML.artist.image.(@size=="large");
            insertArtistUrl = "http://localhost:8888/flexapp/insert_artist.php?name=" + artistName + "&pic=" + artistPic
                              + "&userid=" + userId;
            insertArtistService.send();
        }
    }

这是调试器中的结果:

所有节点:

【问题讨论】:

  • 你能提供一个xml样本吗?
  • 创建watch表达式artistList.artists会得到什么结果?

标签: xml actionscript-3 apache-flex actionscript


【解决方案1】:

您可能应该从迭代 artistList.artists.artist 开始,它表示 artist 节点列表(而不是其父节点)。

【讨论】:

    【解决方案2】:

    忘记添加了

    resultFormat="e4x"
    

    到我的 HTTPService。添加这个解决了问题。

    【讨论】:

      【解决方案3】:

      下面的代码可能会解决问题。但是,如果问题仍然存在,请尝试跟踪您获得的对象。我把一些跟踪内联。总账

        protected function getArtistsSucces(event:ResultEvent):void
          {
              var artistList:XMLList = XMLList(event.result);
              var artistXML:XML;
              for each(artistXML in artistList.artists.artist) 
              // i m not sure about "artistList.artists.artist" here.
              //Cant check it atm, need your xml data.
              {
                  //trace(artistXML); // check which object comes here.
      
                  var artistName:String = artistXML.name;
                  var artistPic:String = artistXML.image.(@size=="large");
                  insertArtistUrl = "http://localhost:8888/flexapp/insert_artist.php?name=" + artistName + "&pic=" + artistPic
                                    + "&userid=" + userId;
                  insertArtistService.send();
              }
          }   
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-04-02
        • 2020-07-26
        • 2017-04-27
        • 1970-01-01
        • 1970-01-01
        • 2013-03-14
        • 1970-01-01
        相关资源
        最近更新 更多