dポイントプレゼントキャンペーン実施中!

Flashで読み込む外部XML内でタグを使おうとしたのですが、
上手くいきません。

<?xml version="1.0" encoding="UTF-8"?>
<news>
<list date="8/31">ダミーテキストです。ダミーテキストです。&lt;br&gt;ダミーテキストです。ダミーテキストです。</list>
</news>

のようにしたところ、そのまま<br>と表示されてしまいました。
Flash側では、
-------------------------------------------------------------
for( var i:Number=0; i<_root.dateList.length; i++){
_root.cnt.attachMovie( "news", "news"+i, 100+i );
var nNews:MovieClip = _root.cnt["news"+i];

nNews.dateField.html = true;
nNews.newsField.html = true;

nNews.dateField.autoSize = "left";
nNews.newsField.autoSize = "left";

nNews.dateField.htmlText = _root.dateList[i].toString();
nNews.newsField.htmlText = _root.newsList[i].toString();
}
-------------------------------------------------------------
の様にしています。

・XML の読み込みは xfactorstudio の XPath を使って読込み、
それを dateList の中に配列で格納しています。

FLASH側でHTMLを生成するのは上手くいくのですが、
外部となると、どうも・・・・。
不明点があったら、追加で記述しますので、言ってください。
どうぞ、宜しくお願いいたします。

A 回答 (1件)

それだとタグ記号が無効化されてるね。

。。(実体参照によって"<"と">"が記号としてしか表示されない)


って事じゃなく
普通に <br> と書いても うまくいかないというなら
xml内の<br>のnamespaceがHTMLのそれではないから。

<news html:xmlns="http://www.w3.org/1999/xhtml">

のようなprefix宣言をして
<html:br>
のような書き方をしないとならない。
これが嫌な場合は"<br>"等のhtmlタグを拾って flash側で吐き直す処理を入れなければならない。
    • good
    • 0
この回答へのお礼

ご回答、ありがとうございます。

すいません、自己解決してしまいました・・・・。

Flash側のScriptをいじったら、タグがきくようになりました。
nNews.dateField.htmlText = _root.dateList[i].toString();
nNews.newsField.htmlText = _root.newsList[i].toString();
の部分を
nNews.dateField.htmlText = _root.dateList[i].nodeValue;
nNews.newsField.htmlText = _root.newsList[i].nodeValue;
としたら正常に動作しました。

よく考えてみれば、そりゃそうですよね。
ありがとうございました。

お礼日時:2007/07/23 20:56

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!