<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    ivaneeo's blog

    自由的力量,自由的生活。

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      669 Posts :: 0 Stories :: 64 Comments :: 0 Trackbacks

    眾所周知Flex主要用于B/S結構程序的開發,凡是這類型的開發都存在頁面間的傳值的問題,通常一般的B/S開發主要不外乎使用地址修改法,隱藏表單域等方法,但是這些方法在Flex中確沒有用,原因是應為Flex支持的模型和普通的B/S開發語言不一樣,一般的B/S開發語言使用的主要是請求/響應模型,而Flex采用的是事件驅動模型(這種模型主要見于C/S結構程序),所以我們的Form表單等傳值方法就無效了,哪么我們如何在兩個這樣模型的頁面中傳遞數據呢?下面我們講述下兩種常用的傳值方法:
    一、 利用ExternalInterface調用Javascript
    a) 該方法主要利用ExternalInterface的call方法調用Javascript函數,進而修改地址(有點類似于地址修改法),在接受頁面上主要是靠BrowserManager獲取地址欄信息,并利用URLUtil截取參數。
    b) 該方法雖然簡單但是確調用了2種語言,給編寫帶來一定的困難
    發送頁面代碼(second.html):
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
     <mx:Script>
      <![CDATA[
      function kk():void{
       var val:String = myparam.text;
     ExternalInterface.call("function(){window.location.href='http://localhost:8080/send/page.html#param1="+val+"'}");  }
      ]]>
     </mx:Script>
     <mx:TextInput  id="myparam"></mx:TextInput>
     <mx:Button name="ok" click="kk()" x="185" label="提交"></mx:Button>
    </mx:Application>
    接收頁面代碼(page.html):
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()" >
     <mx:Script>
      <![CDATA[
       import mx.managers.IBrowserManager;
       import mx.managers.BrowserManager;
       import mx.utils.URLUtil;
       [Bindable]
       var param:String;
       function init():void
       {
        var bm:IBrowserManager = BrowserManager.getInstance(); 
        bm.init();
        var o:Object = URLUtil.stringToObject(bm.fragment,"&");
        param = o.param1;
       }
      ]]>
     </mx:Script>
     <mx:TextInput id="val" text="{param}">
     </mx:TextInput>
    </mx:Application>
    二、 利用SharedObject(本地共享對象傳送)
    a) 該對象類似于Cookie,將需要傳送的數據放在SharedObject對象中,而實際上在本機大致在(win2k和 win xp中,默認路徑為C:/Documents and Settings/username/Application Data/Macromedia/Flash Player/#SharedObjects (username為機器的用戶名))位置生成一個sol文件,該對象具有一個data屬性,只要將你要傳的數據按鍵值對放進去就好了,下次讀取的時候就在本地直接讀取即可
    b) 遺憾的是,該對象要求你自己創建還要自己清除,并且在寫入數據時一定要強制刷新,否則數據無法希爾
    發送頁面代碼(index.html):
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
     <mx:Script>
      <![CDATA[
       function s mit():void
       {
        var param:String = myparam.text;
        //創建全局SharedObject,如果不用全局就去掉后面的"/",一旦去掉那么cookie只能被自己的Application使用,其他Applicaiton無法看見
        //myparam是要求在本機創建一個叫cookie.sol的文件
        var obj:SharedObject = SharedObject.getLocal("cookie","/");
        obj.data.username=myparam.text;
        obj.flush();
        //調用URLReqst將跳轉到second.html頁面
        var reqst:URLReqst =new URLReqst();
        reqst.url="second.html";
        navigateToURL(reqst);
       }
      ]]>
     </mx:Script>
     <mx:TextInput id="myparam"></mx:TextInput>
     <mx:Button label="提交" click="s mit()" x="177"></mx:Button>
    </mx:Application>
    接收頁面代碼(second.html):
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()">
     <mx:Script>
      <![CDATA[
       [Bindable]
       var param:String;
       function init():void
       {
        //在本地找到myparam.sol文件
        var obj:SharedObject =SharedObject.getLocal("cookie","/");
        //讀取前頁存入的數據
        param = obj.data.username;
        //用完了別忘了將myparam.sol文件刪除
        obj.clear();
       }
      ]]>
     </mx:Script>
     <mx:TextInput id="mypar" text="{param}"></mx:TextInput>
    </mx:Application>


    posted on 2011-10-21 16:32 ivaneeo 閱讀(523) 評論(0)  編輯  收藏 所屬分類: flex-我酷所以我在
    主站蜘蛛池模板: 国产gv天堂亚洲国产gv刚刚碰| 亚洲国产精品免费观看| 亚洲精品一级无码中文字幕| 亚洲中文字幕日本无线码| 亚洲 日韩 色 图网站| 污污的视频在线免费观看| a级毛片100部免费观看| 久久乐国产精品亚洲综合| 国产精品九九久久免费视频| 国产福利在线观看免费第一福利| 亚洲欧洲日本精品| 中文字幕在线视频免费| 亚洲永久精品ww47| 成人久久免费网站| 亚洲精品**中文毛片| 97在线观免费视频观看| 国产天堂亚洲国产碰碰| 亚洲一区二区三区国产精品| a级片免费观看视频| 精品日韩亚洲AV无码| 久久九九久精品国产免费直播| 国产gv天堂亚洲国产gv刚刚碰| 久久精品乱子伦免费| 性xxxx黑人与亚洲| 四虎永久在线精品免费影视| 国产免费牲交视频免费播放| 亚洲AV日韩AV高潮无码专区| 亚洲成在人线在线播放无码| 亚洲AV永久无码精品一区二区国产 | 暖暖日本免费在线视频| 国产亚洲综合色就色| 91人成网站色www免费下载| 亚洲熟妇无码一区二区三区 | 永久免费av无码入口国语片| 99久久亚洲精品无码毛片| 国产精品视频免费一区二区| 久久精品国产亚洲麻豆| 美女视频黄a视频全免费网站一区 美女视频黄a视频全免费网站色 | 成人au免费视频影院| 亚洲一区二区三区亚瑟| 四虎永久在线精品免费观看地址|