flash actionscript:
Hi All....
Hoping someone can take a look at my code and provide suggestions.. ?
I'm able to load my XML and get the node names but I can't always get the
values.
Right now my file is very basic. I have an external XML file and one block of
script on my first frame....
which writes "traces" for testing. Feel free to copy this code into a flash
file to see the trace results.
I'll post mine at the bottom as well.
Here is my simplified XML file:
------
<MapBuildings>
<Building>
<BuildingID>1</BuildingID>
<Name>Ice Gardens</Name>
<Image1>
http://www.yorku.ca/maps/interactive/images/tait_ext.jpg</Image1>
<Image2>
http://www.yorku.ca/maps/interactive/images/tait_ext.jpg</Image2>
<Description>This building has 6 rinks</Description>
<LastUpdate>4/13/2004</LastUpdate>
</Building>
<Building>
<BuildingID>2</BuildingID>
<Name>Ice Arena</Name>
<Image1></Image1>
<Image2></Image2>
<Description></Description>
<LastUpdate>4/13/2004</LastUpdate>
</Building>
</MapBuildings>
--------
My challenge is to pull out the value of <Image2> for instance.
And below is the script I have on my first frame:
function myLoad () {
trace("number of buildings: " + this.firstChild.childNodes.length);
trace(" ");
level1 = this.firstChild;
level2 = level1.firstChild;
level3 = level2.firstChild;
level4 = level3.firstChild;
trace("level1: name=" + level1.nodeName);
trace(" ");
trace("level2: name=" + level2.nodeName);
trace(" ");
trace("level3: name=" + level3.nodeName);
trace("level3: value=" + level3.nodeValue);
trace(" ");
trace("level4: name=" + level4.nodeName);
trace("level4: value=" + level4.nodeValue);
trace(" ");
trace("value=" + level3.childNodes[2].nodeValue);
n3 = level2.childNodes.length;
trace("number of level3 nodes = " + n3);
trace(" 1st level3 node name = " + level2.childNodes[0].nodeName);
trace(" 1st level3 node value= " + level2.childNodes[0].nodeValue);
trace(" 2nd level3 node name= " + level2.childNodes[1].nodeName);
trace(" 2nd level3 node value= " + level2.childNodes[1].nodeValue);
trace(" 3rd level4 node name= " + level2.childNodes[2].nodeName);
trace(" 3rd level4 node value= " + level2.childNodes[2].nodeValue);
trace(" 4th level3 node name= " + level2.childNodes[3].nodeName);
trace(" 4th level3 node value= " + level2.childNodes[3].nodeValue);
trace(" 5th level3 node name= " + level2.childNodes[4].nodeName);
trace(" 5th level3 node value= " + level2.childNodes[4].nodeValue);
trace(" last level3 node name= " + level2.childNodes[n3-1].nodeName);
trace(" last level3 node value= " + level2.childNodes[n3-1].nodeValue);
}
thisXML = new XML();
thisXML.ignoreWhite = true;
thisXML.onLoad = myLoad;
thisXML.load("buildings2.xml");
-----
And these are my trace results:
number of buildings: 2
level1: name=MapBuildings
level2: name=Building
level3: name=BuildingID
level3: value=null
level4: name=null
level4: value=1
value=
number of level3 nodes = 6
1st level3 node name = BuildingID
1st level3 node value= null
2nd level3 node name= Name
2nd level3 node value= null
3rd level4 node name= Image1
3rd level4 node value= null
4th level3 node name= Image2
4th level3 node value= null
5th level3 node name= Description
5th level3 node value= null
last level3 node name= LastUpdate
last level3 node value= null