2010-02-08 30 views
0

我想動態創建一個xml列表..但是,當我添加在cdata標記它給我一個錯誤,說標籤必須終止,即使我沒有使用這些。它似乎是試圖將cdata標籤作爲標籤讀取。flex創建與cdata xmllist

VAR addList:的XMLList =新的XMLList( 「」 + 「」 + PERSONNAME + 「」 + 「」 + personTitle + 「」 + 「」 + personEducation + 「」 + 「」 + personBio +「 「+ 」「)

我在某處讀過你必須轉義角色,但不知道確切的位置。

+0

AFAIK你不應該雙引號XML。不知道你會如何添加變量,如果你不是雙引號雖然... – invertedSpear 2010-02-08 17:13:57

+0

它工作正常,當我沒有使用cdata標籤。我儘可能在單引號中輸入,但它仍然給我同樣的錯誤。引號不是問題,它是cdata標籤。 VAR addList:的XMLList =新的XMLList( \t \t \t \t \t '<人smallImg =「' + smallImg + ' 」largeImg =「' + largeImg + ' 」CATID =「' + CATID + ' 」隱藏=「' +隱藏+ '「>' + \t \t \t \t \t '<![CDATA [' + PERSONNAME + ']]>' + \t \t \t \t \t '<![CDATA [' + personTitle +' ]]>'+ \t \t \t \t \t '<![CDATA [' + personEducation + ']]>' + \t \t \t \t \t '<![CDATA [' + personBio + ']]>' + \t \t \t \t \t'' \t \t \t \t); – pfunc 2010-02-08 17:21:04

+0

@cherouvim - 你做了什麼編輯?現在完全不可讀。 – invertedSpear 2010-02-08 18:25:19

回答

2

您試圖在MXML文檔的<Script>標記中使用此字符串,是嗎?

由於腳本標籤內CDATA塊定義自己,]]>是無效字符序列(或者更確切地說,它表示CDATA,這應該是</Script>結束tag之前結束。

這是不可能的逃生 - 看this SO question - 但在你的情況,你可以很容易地解決它要麼定義常量來標記CDATA節:。

var CDBegin:String = "<!" + "[CDATA["; 
var CDEnd:String = "]]" + ">";  

var s:String = "<text>" + CDBegin + myText + CDEnd + "</text>"; 

或移動您的XML建設提高到一個純ActionScript文件,而不是MXML