html、swf、jsp三种情况下Flex中如何获得地址栏参数

本文介绍了Flex应用中通过BrowserManager、Application.parameters和JS交互三种方式来获取URL参数的具体实现步骤,包括实例代码演示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一般flex给外界调用会部署成三种方式:如:

http://localhost:8080/monitor.htm#type=test&...

  http://localhost:8080/monitor.swf?type=test&...

http://localhost:8080/monitor.jsp?type=test&...

如何获得这三种不同的方式 下的参数呢?

第一种情况:通过BrowserManager直接获得#后面的参数,然后分割字符串&即可:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" minWidth="955" minHeight="600"
                creationComplete
="init()">
    
<mx:Script>
        
<![CDATA[
            import mx.controls.Alert;
            import mx.managers.BrowserManager;
            import mx.managers.IBrowserManager;
            protected 
function init():void
            {
                
var bm:IBrowserManager = BrowserManager.getInstance();
                bm.init();
                
var para:String = bm.fragment;
                
                Alert.show(para);
            }
        ]]
>
    
</mx:Script>

</mx:Application>  

第二种情况:通过Application.pararms

var str:String = application.parameters.type; 

 第三种情况:通过和js交互,获得参数值

 function getVars(){
                  
var url = location.href;  
                  
var pattern = /(\w+)=(\w+)/ig;
                  
var parames = {};
                  url.replace(pattern, 
function(a, b, c){
                        parames[b] 
= c;
                  });
                  
                   
var o = new Object();
                   o.topoId 
= parames['topoId'] ;
                   o.nodeId 
= parames['nodeId'] ;
                   
return o;

 在flex中

/**获得url地址栏上的参数*/

var info:Object = ExternalInterface.call("getVars"); 

转载于:https://www.cnblogs.com/liekkas/archive/2011/06/14/2080877.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值