加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Flex中解析地址栏传递的参数

发布时间:2020-12-15 04:46:12 所属栏目:百科 来源:网络整理
导读:由于flex默认包装的页面是html页面,所以与jsp不同的是参数是传递在“#”后面,而jsp是在“?”后面,所以这点得弄清。 ---点击阅读更多 ??? ? ? ? ?要解析参数,首先需要把地址栏链接参数链(即“#”后面的参数对)给获取下来,这个有很多方法,比如调用Jav
由于flex默认包装的页面是html页面,所以与jsp不同的是参数是传递在“#”后面,而jsp是在“?”后面,所以这点得弄清。

--->点击阅读更多 ???

? ? ? ?要解析参数,首先需要把地址栏链接参数链(即“#”后面的参数对)给获取下来,这个有很多方法,比如调用JavaScript的?ExternalInterface.call()方法,本人用的是flex的静态类BrowserManager获得的,代码如下所示:

?

[javascript] view plain copy print ?
  1. /**?
  2. ?*?获取地址栏参数链?
  3. ?*?*/??
  4. public?function?getAllParams():String{??
  5. ????var?bm:IBrowserManager=BrowserManager.getInstance();??
  6. ????bm.init();??
  7. ????return?bm.fragment??
  8. }??


? ? ? 此方法返回的是地址栏参数对。


? ? ?下面需要对此参数对进行分割并保存在一个object对象里,代码如下所示:


? ??

[javascript] view plain copy print ?
  1. /**?
  2. ????*?接收并解析浏览器地址栏url的信息?
  3. ????*?*/??
  4. ???public??functiongetParams():Object?{??
  5. ????????
  6. ???????var?params:Object=?{};??
  7. ???????var?query:String=getAllParams();??
  8. ???????if(query)?{??
  9. ??????????var?pairs:Array?=?query.split("&");??
  10. ??????????for(var?i:uint=0;?i?<?pairs.length;?i++)?{??
  11. ??????????????var?pos:int?=?pairs[i].indexOf("=");??
  12. ??????????????if(pos?!=?-1)?{??
  13. ?????????????????var?argname:String?=?pairs[i].substring(0,?pos);??
  14. ?????????????????var?value:String?=?pairs[i].substring(pos+1);??
  15. ?????????????????params[argname]?=?value;??
  16. ??????????????}??
  17. ??????????}??
  18. ???????}??
  19. ???????return?params;??
  20. ???}??

?

? ? ? 此方法返回的是一个object对象,如果参数链不为空,那么取值很简单,就是:


? ?

[javascript] view plain copy print ?
  1. Var?obj:Object=?getParams();??
  2. Var?email:String=obj.email;??

? ? ? 然后再加入自己的业务逻辑就ok了。

--->点击阅读更多 ???

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读