Flex从页面(*.thml)获取参数的方法

网上能查到很多类似资料,但完整性不敢恭维。以下是解决方案及要点:

方法一: 通过url的方式向flex传参数

第1步:在网页中设置一个链接,如 <a href="test.jsp?p1=test1&p2=test2">测试链接一</a>,其中test.jsp嵌入了 flash

第2步:获取参数

var params:Object =URLUtil.parseUrlParameters(ExternalInterface.call("window.location.search.substring", 1));

var param1:String=params["p1"];

parseUrlParameters是一个简单的分析url参数的方法,以下是方法体:

public static function parseUrlParameters(query:String):Object{

     var params:Object = {};

     if(query) {

                var pairs:Array = query.split("&");

                for(var i:uint=0; i < pairs.length; i++) {

                    var pos:int = pairs.indexOf("=");

                    //Alert.show(String(pos));

                    if(pos != -1) {

                        var argname:String = pairs.substring(0, pos);

                        var value:String = pairs.substring(pos+1);

                        params[argname] = value;

                    }

                }

            }

            return params;

  }

注:如果window.location.search.substring换成window.location.href.toString 则可获取完整的url

你可能感兴趣的:(Flex)