所以我有一个URL,我需要我的Flash电影从中提取变量:
示例链接:
http://www.example.com/example_xml.php?aID=1234&bID=5678
我需要获取aID和bID号码。
我可以通过ExternalInterface将完整的URL转换为String
var url:String = ExternalInterface.call("window.location.href.toString");
if (url) testField.text = url;
只是不确定如何操纵String来获取1234和5678数字。
感谢任何提示,链接或帮助!
答案 0 :(得分: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
答案 1 :(得分: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:)