[ sekvoja @ 29.08.2009. 19:04 ] @
Pozdrav svima, zanima me da li cdata moze da se postavi u xml nod zajedno sa obicnim tekstom (tekstom van cdata taga)?

Npr:
Code:
<title>Obican tekst obican tekst obican tekst
<![CDATA[<font color='#0066ff'>cdata</font> cdata cdata cdata]]>
Obican tekst obican tekst obican tekst</title>

Ako stavim samo cdata ili samo tekst radi ok, ali ako iskombinujem oba nesto nece... :) Jel to uopste moguce?
[ deepwhite @ 29.08.2009. 22:53 ] @
Ne moze CDATA tako da radi, ali ako bi izneo problem zbog cega ti treba mozda nadjemo drugacije resenje.
[ shedvel @ 30.08.2009. 13:26 ] @
Ne vidim zasto ne bi moglo, CDATA u stvari i ne "radi"nista drugo do, jednostavnog omogucavanja ubacivanja karaktera koji ce biti ignorisani od strane parsera jer bi u suprotnom izazvali gresku pri parsovanju (<, &, ||...).

Citat:
Ako stavim samo cdata ili samo tekst radi ok, ali ako iskombinujem oba nesto nece... :) Jel to uopste moguce?


Verujem da ti gresku uzrokuje pogresno parsovanje, ako ti moze pomoci, evo ti primer sa tvojim xml-om.

Code:

package 
{
    import flash.display.MovieClip;
    import flash.events.Event;
    import flash.events.IOErrorEvent;
    import flash.net.URLLoader;
    import flash.net.URLRequest;
    import flash.text.TextField;
    
    public class cdata extends MovieClip
    {
        var xmlAdr:URLLoader = new URLLoader();
        var xml:XML;
        var parsed:XMLList;
        
        var field:TextField
        
        public function cdata()
        {
            createField();
            loadXml();
        }
        
        private function createField():void
        {
            field = new TextField();
            field.width = 200;
            field.height = 200;
            field.x = stage.stageHeight / 2 - field.width/2;
            field.y  = stage.stageHeight / 2 - field.height/2;
            field.border = true;
            field.borderColor = 0x000000;
            field.textColor = 0x000000
            field.wordWrap = true;
            stage.addChild(field);
        }
        
        private function loadXml():void
        {
            xmlAdr.load(new URLRequest("tvojXml.xml"));
            
            xmlAdr.addEventListener(Event.COMPLETE, xmlLoaded);
            xmlAdr.addEventListener(IOErrorEvent.IO_ERROR, xmlError);
        }
        
        public function xmlError(e:IOErrorEvent):void
        {
            trace(e.text);
        }
        
        public function xmlLoaded(e:Event):void
        {
            xml = new XML(e.target.data);
            parsed = new XMLList(xml.title);
            
            field.htmlText = parsed[0];
            
        }
        
        
    }
    
}


[ sekvoja @ 30.08.2009. 14:30 ] @
Mislim da cu koristiti samo cdata za ceo tekst. U sustini i nema neke razlike,
ne znam sto sam iskomplikovao. A sto se tice parsovanja tu je sve ok sigurno
jer vidim tekst. Kao sto rekoh, ne vidim samo tekst unutar cdata taga ako taj
isti tag nije na samom pocetku xml noda, tj ako se ispred njega nalazi neki tekst.

Hteo sam da omogucim linkove u tekstu a da istovremeno ostatak teksta
stilizujem sa setTextFormat(); Upotrebicu css da bih resio stvar...

Hvala na odgovorima,
Pozz