在运行下面的代码,我得到了如下的错误信息,数据提供问题
function urlLoader_complete(evt:Event)
{
XMLdata=(evt.target.data).toString();
XMLdata=XMLdata.split("<").join("<");
XMLdata=XMLdata.split(">").join(">");
xml=new XML(XMLdata);
**fnctn();**
}
function fnctn()
{
var tp:int = bulb1 + bulb2 + bulb3 + bulb4;
if(tp == 1)
{
**gep.addItem(new Object());**
gep[gep.length-1].voltage1 =evt.result.Array.Voltage.Val;
gep[gep.length-1].current1 = evt.result.Array.Current.Val;
gep[gep.length-1].voltage2 = 0;
gep[gep.length-1].current2 = 0;
gep[gep.length-1].voltage3 = 0;
gep[gep.length-1].current3 = 0;
gep[gep.length-1].voltage4 = 0;
gep[gep.length-1].current4 = 0;
}
错误是
ReferenceError: Error #1065: Variable evt is not defined.
at vi_fla::MainTimeline/fnctn()[vi_fla.MainTimeline::frame2:449]
at vi_fla::MainTimeline/urlLoader_complete()[vi_fla.MainTimeline::frame2:436]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at flash.net::URLLoader/onComplete()
这两条线有错误被标记在上面的代码是什么?会是这个错误的原因?
** *UPDATE* ** * ****
现在我已经修改了代码如下。
功能fnctn(EVT:事件)
{ 变种TP:整数= bulb1 + bulb2 + bulb3 + bulb4;
如果(TP == 1)
{
ChartDataProvider1.push(xml.Value.Array.Voltage.Val.text())
ChartcategoryNames.push();
trace("value= "+xml.Value.Array.Voltage.Val.text())
}
}
现在有在运行中没有错误,但迹线值显示没有值。它显示为值=
如何解决这个问题?
** * ****UPDATE* ** * ** * ** * ****
我修改代码如下
var ChartcategoryNames:Array = new Arra Y();
var ChartDataProvider1:Array = new Array();
var lineArray1:LineSeries = new LineSeries();
如果(TP == 1)
{
ChartDataProvider1.push(xml.graph.Voltage.text());
ChartcategoryNames.push();
trace("hi= "+xml.graph.Voltage.text());
yAxis = new NumericAxis();
yAxis.maximum=10;
yAxis.minimum=0;
yAxis.majorUnit=2;
Exp_Content.input_mc.in_graph.verticalAxis=yAxis;
//Exp_Content.input_mc.in_graph.dataProvider=ChartDataProvider1
lineArray1.dataProvider=ChartDataProvider1;
}
现在跟踪喜显示正确的值,这也可见于ChartDataProvider1.But lineArray1不具有任何值...请为此问题提出解决方案..
你真的想修改你的命名约定。 – Taurayi