ugrás a tartalomhoz

XML objektummá alakítása

therest · 2012. Júl. 12. (Cs), 17.28
Helló!

Adott egy XML objektum, amit szeretnék objektummá alakítani amit egy ExternalInterface.call hívásnak paraméterként át tudok adni.

Ha én készítek egy objektumot akkor azzal szépen átmegy:
  1. //as3  
  2. var mobj:Object={attribute:'value'};  
  3. ExternalInterface.call('jsfunc',mobj);  
  4.   
  5. //js  
  6. function jsfunc(param) {  
  7. console.log(param);   
  8. }  
Nekem viszont xml-ből kellene ilyesmi objektumot csinálni.
  1. // as3  
  2. var mxml:XML = new XML(mstring);  
  3. var mobj:Object= ?convert(mxml);  
  4. ExternalInterface.call('jsfunc',mxml);  
Van erre valami beépített mód?
 
1

Rengeteg

Poetro · 2012. Júl. 12. (Cs), 20.05
Van regeteg mód, amivel natív objektummá lehet alakítani. Elárulom, érdemes rákeresni a kedvenc keresődben.
3

Köszi a válaszokat. Poetro,

therest · 2012. Júl. 13. (P), 09.57
Köszi a válaszokat.

Poetro, körbenéztem sok helyen a Google harmadik lapjáig különféle keresési kifejezésekre minden link lila.. :) Ne hidd, hogy egyből itt kérdezek.

A egyik megoldás a simpleXMLDecoder lenne, de ahogy látom a fejlesztői környezetem (flash prof cs5) nem tartalmazza a csomagot (csak a flex 3), pedig a 9es flash player ismeri az eszközt.

11-es flash playertől lehet JSON-re alakítani, de jó lenne ha nem kellene megkövetelnem ezt a verziót a felhasználóktól.

A fentieken kívül meg persze találtam sok megoldást, blogokban itt-ott, amiket végső esetben használhatnék is (vagy írhatnék hasonlót magam), de sokszor ezeknél van egyszerűbb, letisztultabb mód, ami egyetlen megfelelő hívás az Adobe saját eszközeire támaszkodva.

Ilyet nem lelek, és a kérdés erre vonatkozik, ismer-e valaki efféle eszközt.
4

Loading XML into a flash

Poetro · 2012. Júl. 13. (P), 10.12
5

Ezeket néztem én is, de pont

therest · 2012. Júl. 13. (P), 10.59
Ezeket néztem én is, de pont ez a kérdés, hogy nem létezik olyan Adobe hívás ami ugyan ezt tudja? Elég fura ha így van. :(
6

as3corelib

Poetro · 2012. Júl. 13. (P), 11.07
Ha jól látom, akkor az as3corelib Adobe kód, és valószínű azóta bekerült a Flash-be is (ahogy látom, már több objektumnak van toJSON metódusa).
7

Az as3corelib, sztem nem

therest · 2012. Júl. 13. (P), 14.23
Az as3corelib, sztem nem Adobe cucc, csak egy külsős lib.

A toJSON-t írtam egy előző postomban, hogy ez így van, és szép is lenne, de csak a 11-es flash player-től van jelen, és jelenleg még kb a userek 30%-a nem updateelt fel 11-re.
Persze mondhatom azt hogy ácsi, csak 11-től, de nem hiszem, hogy ez a jó megközelítés.
2

Nem ActionScript-ezek, de ha

Karvaly84 · 2012. Júl. 12. (Cs), 20.52
Nem ActionScript-ezek, de ha átadnád az XML-t String típusként a JavaScript függvénynek, akkor billió-csillió parser segíthet JS oldalon.