Помощь · Поиск · Пользователи · Календарь
Полная версия этой страницы: вопрос: XML(CDATA)
Flash Zone Forum > Macromedia Flash > ActionScript
tiHo
Народ, сталкнулся с такой проблемой:


Вообщем хотел бы понять, как сделать так чтобы при загрузке из <![CDATA[ теги html не заменялись на их коды:
Код
&lt;
и т.д.

пример(делаю загрузку текста с html-форматированием во Flash):

XML:

Код
<?xml version="1.0" encoding="UTF-8"?>
<all>
    <block id="новость 1">
        <![CDATA[ новость <b>1</b> ]]>
    </block>
    <block id="новость 2">
        <![CDATA[ новость <b>2</b> ]]>
    </block>
</all>


Flash:

Код
var xml:XML = new XML();
xml.load("xml2.xml");
xml.ignoreWhite = true;
xml.onLoad = function()
{
    var cdata1:XML = this.firstChild.childNodes[0];
    var cdata2:XML = this.firstChild.childNodes[1];
    trace(cdata1.childNodes);
    trace(cdata2.childNodes);
};


После чего в окне Output появляется следующее:

Код
новость &lt;b&gt;1&lt;/b&gt;
новость &lt;b&gt;2&lt;/b&gt;


То есть понятненько что он скобки заменяет их html обозначением.

После чего создаю текстовое поле, и помещаю в него:

Код
...
xml.onLoad = function()
{
...
    var cdata1:XML = this.firstChild.childNodes[0];
...
    vivod.html = true;
    vivod.htmlText = cdata1.childNodes;
};


в текстовом поле появляется следующий текст:

Код
новость <b>1</b>


Вопрос: подскажите как сделать так, чтобы теги "работали", а не отображались как есть.
Rohan
делать замену вручную =)
Код
function unescape(str:String):String {
        var result:String = str;
        var expr:Array = [{f:"&apos;",t:"'"},
                      {f:"&gt;",t:">"},
                      {f:"&lt;",t:"<"},
                      {f:"&quot;",t:'"'}];
        for(var i in expr){
            var parts:Array = result.split(expr[i].f);
            result = parts.join(expr[i].t);
        }
        return result;
    }


۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞
۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞
۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞
۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞
۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞
۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞
۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞
۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞
۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞
۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞
۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞
۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞
۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞
۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞
۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞۞
tiHo
пнятненько.. спс
Русская версия IP.Board © 2001-2009 IPS, Inc.