Skip to main content
November 8, 2013
解決済み

XML not loading

  • November 8, 2013
  • 返信数 1.
  • 2035 ビュー

I am stumped. I have been tryign to load my XML into my application and it keeps giving me a 1010 error

var xmlLoader:URLLoader = new URLLoader();
xmlLoader.addEventListener(Event.COMPLETE, parseXMLforSearchPanel);
xmlLoader.load(new URLRequest( "xml/Full_TV_Episodes.xml"));


function parseXMLforSearchPanel(event:Event):void{
var xml:XML = XML(event.target.data);

for(var j:uint = 1; j < main.length; j++){
  if(main.xmlLoader == event.target){main.xml = XML(event.target.data); main.xmlLoaded = true; break;}
}


 
var source:Array = new Array({});
for(i = 0; i < main.xml[0].item.length(); i++){
  source.push({
     MC:new ItemHolder(),
     title:main.xml[0].item.@title,
     channel:main.xml[0].item.@channel,
     letter:main.xml[0].item.@letter,
     genre:main.xml[0].item.@genre.split("#"),
     mostPopular:main.xml[0].item.@mostPopular,
     image:absPath + main.xml[0].item.image,
     url:main.xml[0].item.url,
     urlTarget:main.xml[0].item.url.@target,
     imgLoader:new Loader()
  });
  for(var l:uint = 0; l < source[i+1].genre.length; l++){
   var genreAdded:Boolean = false;
   for(var k:uint = 0; k < genre.length; k++){
    if(genre == source[i+1].genre){genreAdded = true; break;}
   }
   if(!genreAdded){genre.push(source[i+1].genre);}
  }
  source[i+1].imgLoader.load(new URLRequest(source[i+1].image));
  source[i+1].MC.container.addChild(source[i+1].imgLoader);
  source[i+1].MC.title = source[i+1].title;
  source[i+1].MC.url = source[i+1].url;
  source[i+1].MC.urlTarget = source[i+1].urlTarget;
  source[i+1].MC.mouseChildren = false;
  source[i+1].MC.addEventListener(MouseEvent.ROLL_OVER, newChoiceItem);
  source[i+1].MC.addEventListener(MouseEvent.CLICK, openItemUrl);
}
//MOST POPULAR PART
if(main.xml[0].mostPopular[0] != undefined){
  if(main.xml[0].mostPopular[0].show[0] != undefined){
   for(var m:uint = 0; m < main.xml[0].mostPopular[0].show.length(); m++){
    for(i = 1; i < source.length; i++){
     if(main.xml[0].mostPopular[0].show.@title == source.title){
      mostPopular.push({MC:source.MC});
     }
    }
   }
  }
}
main.source = source;
genre.sort(); refreshGenreMenuDropDown();

if(firstRun && j == menuBTNselected){
  filterByMostPopular();
  firstRun = false;
}

//XMLforSearchPanelParsed = true;
}

ANy help will be greatly apprciated

このトピックへの返信は締め切られました。
解決に役立った回答 Ned Murphy

for(i = 0; i < main.xml[0].item.length(); i++){


I don't see where you declared the variable i, so do like you did for the other loops and declare it in that line and see if that solves it.  If it was already declared somewhere else that I don't see, then try tracing that middle variable ( main.xml[0].item.length() ) to see if it is coming up with a valid value...

返信数 1

Ned Murphy
Legend
November 8, 2013

What is the complete error message?

November 8, 2013

TypeError: Error #1010: A term is undefined and has no properties.

at tvshows_fla::MainTimeline/parseXMLforSearchPanel()[tvshows_fla.MainTimeline::frame1:40]

at flash.events::EventDispatcher/dispatchEventFunction()

at flash.events::EventDispatcher/dispatchEvent()

at flash.net::URLLoader/onComplete()

Ned Murphy
Legend
November 8, 2013

Which line is line 40 in frame 1?