请帮我将ActionScript 2.0代码转换为ActionScript 3.0
这是代码:
//***********************************************************
var theXML:XML = new XML();
theXML.ignoreWhite = true;
theXML.onLoad = function() {
var nodes = this.firstChild.childNodes;
for (i=0;i<nodes.length;i++){
theList.addItem(nodes[i].firstChild.nodeValue,i);
}
}
theXML.load("http://localhost/conn.php");
//***********************************************************
这是我的PHP代码, echo 是一个XML字符串:
echo "<?xml version=\"1.0\"?>\n";
echo "<name>\n";
while ( $line = mysql_fetch_assoc($res) )
{ echo "<item>" . $line["name"] . "</item>\n"; }
echo "</name>\n"
使用AS3,如何将XML字符串解析为具有节点的实际XML数据?
答案 0 :(得分:1)
how to work with XML in AS3和how to migrate AS2 to AS3有很多例子。
这相当于你发布的内容:
var loader:URLLoader = new URLLoader();
loader.load(new URLRequest("http://localhost/conn.php"));
loader.addEventListener(Event.COMPLETE, loaderComplete);
function loaderComplete(e:Event):void {
XML.ignoreWhitespace = true;
var xml:XML = new XML(loader.data);
var nodes:XMLList = xml.child(0).children();
for (var i:int = 0; i < nodes.length(); i++) {
theList.addItem(nodes[i].child(0).text());
}
}
请注意,在AS3中,您可以按名称引用XML节点,例如xml.gallery.image[3].url
而不是xml.child(0).children()[3].child(0)
等。