2010-04-27 31 views
7

所以,我有我需要我的Flash影片從提取變量網址:如何獲得/獲取URL變量在Flash AS3

例如鏈接:
http://www.example.com/example_xml.php?aID=1234&bID=5678

我需要得到援助和BID號碼。

我能夠通過ExternalInterface的

得到完整的URL爲一個字符串
var url:String = ExternalInterface.call("window.location.href.toString"); 
if (url) testField.text = url; 

只是不確定如何操作字符串只得到了1234個5678號。

欣賞任何提示,連接或幫助您!

回答

12

創建的URLVariables一個新的實例。

// given search: aID=1234&bID=5678 
var search:String = ExternalInterface.call("window.location.search"); 
var vars:URLVariables = new URLVariables(search); 
trace(vars.aID); // 1234 
trace(vars.bID); // 5678 
+0

活泉謝謝:)我在哪裏可以找到所有可能的「window.location的語法信息和他們做什麼 – 2010-04-28 14:56:14

+2

@Leon,我個人比較喜歡火狐/壁虎的參考,但也有其他的引用。HTTPS ://developer.mozilla.org/en/DOM/window#Properties – 2010-04-28 15:09:22

+0

哦哇有一噸!謝謝:) – 2010-04-29 03:07:54

1
var valuePairs:Array = url.substring(url.indexOf("?")+1).split("&"); 
var map:Object = new Object(); 
for (var i:int=0; i < valuePairs.length; i++) { 
    var nextValuePair:Array = valuePairs[i].split("="); 
    map[nextValuePair[0]] = nextValuePair[1]; 
} 


trace(map["aID"]); // 1234 

未經測試的代碼!這只是簡單的字符串操作。當然

和......幾乎1襯(還未經測試)

var map:Object = new Object(); 
var temp:Array; 
for each (var i:String in /.*\?(.*)/.exec(url)[1].split("&")) map[(temp=i.split("="))[0]]=temp[1]; 

,但它可能會更好一起去的URLVariables :)