数组控件 XML delievy AS3
Array controls XML delievy AS3
所以,假设我在 Flash 上有一个数组,类似于:
var myArray:Array = [option2, option3]
并且假设我有一个 XML 文件是这样的:
<easFormat>
<option1>
<easimg>img01.jpg</easimg>
<easName>Carro 01</easName>
<easPrice>250.000</easPrice>
</option1>
<option2>
<easimg>img02.jpg</easimg>
<easName>Carro 02</easName>
<easPrice>180.000</easPrice>
</option2>
<option3>
<easimg>img03.jpg</easimg>
<easName>Carro 03</easName>
<easPrice>80.000</easPrice>
</option3>
<option4>
<easimg>img04.jpg</easimg>
<easName>Carro 04</easName>
<easPrice>150.000</easPrice>
</option4>
</easFormat>
我的 XML 已经正确加载。
现在我只想显示我的 XML 中与数组值匹配的节点(选项 2 和 3)。你们能帮我理清这样做的逻辑吗?
非常感谢!
首先你应该改变 xml 结构如下
<easFormat>
<option>
<easimg>img01.jpg</easimg>
<easName>Carro 01</easName>
<easPrice>250.000</easPrice>
</option>
<option>
<easimg>img02.jpg</easimg>
<easName>Carro 02</easName>
<easPrice>180.000</easPrice>
</option>
<option>
<easimg>img03.jpg</easimg>
<easName>Carro 03</easName>
<easPrice>80.000</easPrice>
</option>
<option>
<easimg>img04.jpg</easimg>
<easName>Carro 04</easName>
<easPrice>150.000</easPrice>
</option>
</easFormat>
并假设您的搜索选项是
var options:Array = ["Carro 01", "Carro 04"];
现在是onloaded的代码xml
var _xml:XML = XML(e.target.data);
for(var i:uint = 0; i < _xml.option.length(); i++){
easNames.push(_xml.option[i].easName);
}
正在检查 easNames 数组中的选项。
function matchTest():void{
for(var i:uint = 0; i < options.length; i++){
for(var j:uint = 0; j < easNames.length; j++){
if(easNames[j] == options[i]){
trace(j);
}
}
}
}
所以,假设我在 Flash 上有一个数组,类似于:
var myArray:Array = [option2, option3]
并且假设我有一个 XML 文件是这样的:
<easFormat>
<option1>
<easimg>img01.jpg</easimg>
<easName>Carro 01</easName>
<easPrice>250.000</easPrice>
</option1>
<option2>
<easimg>img02.jpg</easimg>
<easName>Carro 02</easName>
<easPrice>180.000</easPrice>
</option2>
<option3>
<easimg>img03.jpg</easimg>
<easName>Carro 03</easName>
<easPrice>80.000</easPrice>
</option3>
<option4>
<easimg>img04.jpg</easimg>
<easName>Carro 04</easName>
<easPrice>150.000</easPrice>
</option4>
</easFormat>
我的 XML 已经正确加载。 现在我只想显示我的 XML 中与数组值匹配的节点(选项 2 和 3)。你们能帮我理清这样做的逻辑吗?
非常感谢!
首先你应该改变 xml 结构如下
<easFormat>
<option>
<easimg>img01.jpg</easimg>
<easName>Carro 01</easName>
<easPrice>250.000</easPrice>
</option>
<option>
<easimg>img02.jpg</easimg>
<easName>Carro 02</easName>
<easPrice>180.000</easPrice>
</option>
<option>
<easimg>img03.jpg</easimg>
<easName>Carro 03</easName>
<easPrice>80.000</easPrice>
</option>
<option>
<easimg>img04.jpg</easimg>
<easName>Carro 04</easName>
<easPrice>150.000</easPrice>
</option>
</easFormat>
并假设您的搜索选项是
var options:Array = ["Carro 01", "Carro 04"];
现在是onloaded的代码xml
var _xml:XML = XML(e.target.data);
for(var i:uint = 0; i < _xml.option.length(); i++){
easNames.push(_xml.option[i].easName);
}
正在检查 easNames 数组中的选项。
function matchTest():void{
for(var i:uint = 0; i < options.length; i++){
for(var j:uint = 0; j < easNames.length; j++){
if(easNames[j] == options[i]){
trace(j);
}
}
}
}