2014-02-09 136 views
0

我一周前开始学习ActionScript 3,并且偶然发现了一条巨大的学习曲线。我发现在互联网上这个脚本:actionscript 3 - 如何使用此URLRequest脚本?

var _loader:URLLoader; 
var _request:URLRequest; 

function loadData():void { 
    _loader = new URLLoader(); 
    _request = new URLRequest("http://www.travoid.com/game/Purchase.php?gid=1"); 
    _request.method = URLRequestMethod.POST; 
    _loader.addEventListener(Event.COMPLETE, onLoadData); 
    _loader.addEventListener(IOErrorEvent.IO_ERROR, onDataFailedToLoad); 
    _loader.addEventListener(IOErrorEvent.NETWORK_ERROR, onDataFailedToLoad); 
    _loader.addEventListener(IOErrorEvent.VERIFY_ERROR, onDataFailedToLoad); 
    _loader.addEventListener(IOErrorEvent.DISK_ERROR, onDataFailedToLoad); 
    _loader.load(_request); 
} 
function onLoadData(e:Event):void { 
    trace("onLoadData",e.target.data); 
} 
function onDataFailedToLoad(e:IOErrorEvent):void { 
    trace("onDataFailedToLoad:",e.text); 
} 

这一切似乎工作,是不产生错误或输出,但是我的问题来,当我使用此代码下一部分(我做)

function vpBuy(e:MouseEvent):void{ 
    loadData(); 
    if (e.target.data == "false") { 
     inf_a.visible = true; 
     inf_b.visible = true; 
     inf_c.visible = true; 
     inf_d.visible = true; 
     btn_ok.visible = true; 
    } 
} 

我得到这个错误:

ReferenceError: Error #1069: Property data not found on flash.display.SimpleButton and there is no default value. at travoid_fla::MainTimeline/vpBuy() onLoadData

的一部分可能是引发此是:

if (e.target.data == "false") { 

我希望e.target.data是存储在网页上的值(显示为false),但显然不是。通过我在互联网上找到的代码,什么将信息存储在网页上?

谢谢,伊桑韦伯斯特。

回答

0

这是试图检查数据加载之前。因为数据加载是基于时间的过程,而不是即时的。所以,你已经让你的数据检查条件等待数据加载真的

我认为你应该使用一个回调函数vpBuy从“onLoadData”

,或者你可以尝试移动数据查询条件为onLoadData功能像

function onLoadData(e:Event):void { 
    trace("onLoadData",e.target.data); 
    if (e.target.data == "false") 
    { 
      inf_a.visible = true; 
      inf_b.visible = true; 
      inf_c.visible = true; 
      inf_d.visible = true; 
      btn_ok.visible = true; 
    } 
} 
+0

这似乎并不工作,我在onLoadData范围内添加了'trace(e.target.data);'并且它什么也没有返回。任何其他原因?对不起,我是这个新手。 –

+0

你在寻找什么样的数据在网页内? 你想检查是否真的有“页面”吗?或者是其他东西? –

+0

我只是在浏览器中再次尝试,它使用你的代码 - 非常感谢你。 –