2011-12-21 6 views
1
から

XMLデータを読み込むためにサポートしていない:私はXMLを読むことができることができなければCDATACDATA XMLListに

<catering> 
     <contents> 
     <![CDATA[ 
      <title>UPCOMING EVENTS</title> 
      <info _title = "<font size='14' color='#ffffff'>title1</font" image="null"></info> 
      <info _title = "title2" image="images/events/slide1.jpg"></info> 
      <info _title = "title3 " image="images/events/slide2.jpg"></info> 
      <info _title = "title4" image="images/events/slide3.jpg"></info> 
      <info _title = "title5" image="images/events/slide4.jpg"></info> 
      ]] 
     </contents> 
    </catering> 

CODE

eventTitle = loadXMLC.events_1_Contents.contents.title; 
xmlList_1 = loadXMLC.events_1_Contents.contents.info; 
for(i = 0;i < [email protected]_title.length(); i++) 
{ 
    events_0_info.push([email protected]_title[i]); 
    img_ary0.push([email protected][i]); 

} 

を。私はCDATAでデータを読むために何をする必要がありますか?

属性ごとにhtmlタグを使用します。

答えて

1

を迅速exempleです:CDATAタグの間

var data : XML = <catering> 
    <contents> 
     <![CDATA[ 
     <title>UPCOMING EVENTS</title> 
     <info _title = "title2" image="images/events/slide1.jpg"></info> 
     <info _title = "title3 " image="images/events/slide2.jpg"></info> 
     <info _title = "title4" image="images/events/slide3.jpg"></info> 
     <info _title = "title5" image="images/events/slide4.jpg"></info> 
     ]]> 
     </contents> 
    </catering>; 

ノードがテキスト(テキストのブロック)と見られています。データにアクセスするには、このテキストを有効なXMLに変換する必要があります。

trace(XML(data.contents.children()).nodeKind());//text 
var contents : XMLList = XML("<c>"+data.contents.toString()+"</c>").children(); 
trace(contents.toXMLString()); 

私はあなたのサンプルからこの行を削除:

<info _title = "<font size='14' color='#ffffff'>title1</font" image="null"></info> 

Flashがいや...

+0

htmlタグでアクセスできませんか? – Benny

+1

私はあなたの質問を理解している場合:私はあなたのHTMLタグをXMLのタグ属性の中に置くことはできないと思います... – OXMO456

1

CDATAタグを閉じているタイプミスのためだと思います。

<catering> 
    <contents> 
     <![CDATA[ 
      <title>UPCOMING EVENTS</title> 
      <info _title = "<font size='14' color='#ffffff'>title1</font" image="null"></info> 
      <info _title = "title2" image="images/events/slide1.jpg"></info> 
      <info _title = "title3 " image="images/events/slide2.jpg"></info> 
      <info _title = "title4" image="images/events/slide3.jpg"></info> 
      <info _title = "title5" image="images/events/slide4.jpg"></info> 
     ]]> 
    </contents> 
</catering> 

、あなたが行ってもいいでしょう。そうのように末尾に>を追加してみてください。 @ OXMO456として

EDIT

が言及しています。フラッシュ解析は最初の_title属性を超えません。私はXML属性を使用している方法は悪い習慣だと思う。本質的には、属性は要素に関する情報を含み、要素自体の内容は含みません。

おそらくxml構造体を少し調整してみてください。たぶん、このような何かは仕事ができる:

ここ
<title>UPCOMING EVENTS</title> 
<info> 
    <title size="14" color="#ffffff">title1</title> 
</info> 
<info> 
    <title>title2</title> 
    <image>images/events/slide2.jpg</image> 
</info> 
<info> 
    <title>title3</title> 
    <image>images/events/slide3.jpg</image> 
</info> 
<info> 
    <title>title4</title> 
    <image>images/events/slide4.jpg</image> 
</info> 
+0

XMLには、この行を変換することができませんでした。訳が分からない。 – Benny

+0

私の答えを少し調整しました。私は本当に構文解析をテストしなかった、私の悪い。 –

+0

本当にありがとう...しかし、私はCDATAとして読んでほしい、それだけでそれはhtmlタグを受け入れる.. – Benny