无法取得数据 求教该怎么写 哪里错误了
无法取得parameterList60[0]数据 求教该怎么写 哪里错误了
<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="initApp();">
<mx:Script>
<![CDATA[
import flash.net.Responder;
import flash.filters.GlowFilter;
import mx.utils.StringUtil;
import mx.rpc.remoting.RemoteObject;
import mx.core.UIComponent;
import mx.managers.PopUpManager;
import mx.collections.XMLListCollection;
import mx.collections.ArrayCollection;
import mx.rpc.events.ResultEvent;
import mx.events.MenuEvent;
import mx.managers.PopUpManager;
import mx.controls.Alert;
import mx.preloaders.DownloadProgressBar;
private var cdata:Array=[];
private var parameterList60:Array;
private var pnameList60:Array;
private var ppages60:Array;
private var config:XML;
private function resultUsers(event:ResultEvent):void{//处理结果
config = XML(event.result);
var cdata:Array = new Array();
var parameterList60:Array=new Array();
var pnameList60:Array=new Array();
var ppages60:Array=new Array();
var cdatalen=config.data.children().length();
for(var j=0;j<cdatalen;j++){
cdata[0]=config.data.children().@nameurl;
cdata[1]=config.data.children().@parameter;
cdata[2]=config.data.children().@pname;
cdata[3]=config.data.children().children().@pages;
}
for(var j=0;j<cdatalen;j++){
parameterList60[j] =cdata[1][j].split(",");
pnameList60[j] =cdata[2][j].split(",");
ppages60[j]=cdata[3][j].split(",");
}
Alert.show("toString:"+parameterList60[0].toString());
function2();
}
private function function2(){
Alert.show(" parameterList60:"+parameterList60[0].toString()); //无法取得parameterList60[0]数据 求教该怎么写 哪里错误了
}
public function initApp():void
{
srv.url = "config.xml?time=" + (new Date().toDateString()+Math.random());
srv.method = "GET";
srv.resultFormat = "xml";
srv.addEventListener(ResultEvent.RESULT,resultUsers);
srv.send();
}
]]>
</mx:Script>
<mx:HTTPService useProxy="false" showBusyCursor="true" id="srv" resultFormat="xml" ><!--处理结果函数-->
</mx:HTTPService>
</mx:Application>
---------------------
config.xml
<?xml version="1.0" encoding="utf-8"?>
<config>
<!-- 初始化 -->
<!-- 初始化位置经纬度 缩放率 地图类型 (0 地形 1卫星 2地图 3混合) -->
<location jingdu="120.22" weidu="31.384" zoom="11" MAPTYPE="2" />
<!-- 初始化工具栏位置 -->
<toolslocation x="20" y="50" />
<!-- 初始化信息栏位置 -->
<ctoolslocation x="600" y="200" >false </ctoolslocation>
<!-- 初始化数据源 nameurl相对于根目录 参数 -->
<data>
<!-- times="2008-10-23 14:00:00" stationid="fbz02" stationname="上山村" jingdu="120.16" weidu="31.2" wendu="19.1" shidu="84.5" fushe=".38" fengxiang="231.8" yuliang="0" -->
<file nameurl="datexml.asp?typer=2" parameter="FieldsUnits,StationIDs,StationName,Longitude,Latitude,Date,TempC,SpCond,Cond,Sal,Ph,Phmv,Turb,Chlor,ChlorRfu,Bga,BgaRfu,DoPpm,DoP" pname="单位,站号,站名,经度,维度,日期,温度,电导,比电导,盐度,PH,PH毫伏,浊度,叶绿素,叶绿素荧光度,蓝绿藻,蓝绿藻荧光度,溶解氧含量,溶解氧百分比">
<localshow />
<stat type="0,1,3,1,3,3,0,3,1,0,0,0,0,0,0,0,0" pages="0,0,1,0,1,0,1,2,0,1,2,0,1,2,0,1,2,0,1"/>
</file>
<file nameurl="datexml.asp?typer=3" parameter="FieldsUnits,StationIDs,StationName,Longitude,Latitude,Date,TempC,SpCond,Cond,Sal,Ph,Phmv,Turb,Chlor,ChlorRfu,Bga,BgaRfu,DoPpm,DoP" pname="单位,站号,站名,经度,维度,日期,温度,电导,比电导,盐度,PH,PH毫伏,浊度,叶绿素,叶绿素荧光度,蓝绿藻,蓝绿藻荧光度,溶解氧含量,溶解氧百分比">
<localshow />
<stat type="0,1,3,1,3,3,0,3,1,0,0,0,0,0,0,0,0" pages="0,0,1,0,1,0,1,2,0,1,2,0,1,2,0,1,2,0,1"/>
</file>
<file nameurl="datexml.asp?typer=4" parameter="FieldsUnits,StationIDs,StationName,Longitude,Latitude,Date,TempC,SpCond,Cond,Sal,Ph,Phmv,Turb,Chlor,ChlorRfu,Bga,BgaRfu,DoPpm,DoP" pname="单位,站号,站名,经度,维度,日期,温度,电导,比电导,盐度,PH,PH毫伏,浊度,叶绿素,叶绿素荧光度,蓝绿藻,蓝绿藻荧光度,溶解氧含量,溶解氧百分比">
<localshow />
<stat type="0,1,3,1,3,3,0,3,1,0,0,0,0,0,0,0,0" pages="0,0,1,0,1,0,1,2,0,1,2,0,1,2,0,1,2,0,1"/>
</file>
<file nameurl="datexml.asp?typer=5" parameter="FieldsUnits,StationIDs,StationName,Longitude,Latitude,Date,AtempC,Rhumidity,BP,W_Spd,W_Dir" pname="单位,站号,站名,经度,维度,日期,温度,相对湿度,气压,风速,风向">
<localshow />
<stat type="0,1,3,1,3,3,0,3,1,0,0,0,0,0,0,0,0" pages="0,0,1,0,1,0,1,2,0,1,2"/>
</file>
</data>
</config>
[解决办法]
在resultUsers处下个断点,看看event.result是否有值?
[解决办法]
event.result是否有值,你需要确认一下。
[解决办法]
这样定义没有问题.
哪你直接定义
private var parameterList60:Array=new Array();
把resultUsers 那个几个删除了.
你哪样定义 等于 定义一个全局的和一个局部的 .它们的名称相同.
放值的是局部的.
方法取值的是 全局的.
对吧?
[解决办法]
cdata.push(config.data.child("@nameurl"));
如果是 nameurl 节点的属性, 就加@,
否则 去掉@