xml - how to extract the values of the "For" attribute using E4X and Flex / Flash ActionScript -


i have xml document looks this

<someroot xmlns:ix="someurl.com">   <ns:inventorypage title="something">     <ns:inventory id="inventory">       <ns:inventoryview id="inventoryview">         <menu>           <ns:gridcreateactionlink override="true" visible="false" runat="server"/>         </menu>         <columns>           <ns:column for="incidentno" linkto="default"/>           <ns:column displayas="string" for="location"/>           <ns:column for="dateatimeoccur" format="d"/>           <ns:column for="description"/>           <ns:column for="workflow.personresponsible" displayas="string"/>           <ns:column for="workflow.duedate" format="d"/>           <ns:column for="dateclosed" format="d"/>           <ns:column displayas="string" for="workflow.status"/>     </columns>   </ns:inventoryview> </ns:inventory> 

my objective simple, coding adobe flex / as3 , want retrieve values of attributes in column tags , store them in array.

assuming code above in xml object called xmlobj, did following

var xmlobj:xml = new xml(thexmlabove);  var somexmllist:xmllist = new xmllist(xmlobj); 

this scratching head. tried using e4x retrieve values. example

trace (xmlobj.inventorypage.inventory.inventoryview.columns.column[0].(@for)); 

or trace (xmlobj.column[0].(@for));

trace (somexmllist:xmllist .inventorypage.inventory.inventoryview.columns.column[0].(@for)); 

or trace (somexmllist:xmllist .column[0].(@for));

i keep on getting empty xmllist. or null. going wrong? appreciate in proceeding. - edward

you need careful when using namespaces.

var xmlobj:xml = new xml(     <ns:someroot xmlns:ns="http://www.someurl.com/ns-someroot">         <ns:inventorypage title="something">             <ns:inventory id="inventory">                 <ns:inventoryview id="inventoryview">                     <menu>                         <ns:gridcreateactionlink override="true" visible="false" runat="server"/>                     </menu>                     <columns>                         <ns:column for="incidentno" linkto="default"/>                         <ns:column displayas="string" for="location"/>                         <ns:column for="dateatimeoccur" format="d"/>                         <ns:column for="description"/>                         <ns:column for="workflow.personresponsible" displayas="string"/>                         <ns:column for="workflow.duedate" format="d"/>                         <ns:column for="dateclosed" format="d"/>                         <ns:column displayas="string" for="workflow.status"/>                     </columns>                 </ns:inventoryview>             </ns:inventory>         </ns:inventorypage>     </ns:someroot> );   var thenamespace:namespace = xmlobj.namespace(); var columns:xmllist = xmlobj.thenamespace::inventorypage.thenamespace::inventory.thenamespace::inventoryview.columns.thenamespace::column;  trace(columns.@for.length() ) var somelist:xmllist = columns.@for var arr:array = [] each( var somefor:string in somelist){     arr.push(somefor) } trace(arr) 

Comments

Popular posts from this blog

php - Calling a template part from a post -

Firefox SVG shape not printing when it has stroke -

How to mention the localhost in android -