一、頁面預載入時傳值
mui.init(,
extras:,//在這裡新增要傳遞的引數
...},
...]
});或如下
var page = mui.preload(,
extras:
});
通過上述方法預載入頁面,然後在載入的那個頁面中接受引數。
mui.plusready(function());
二、通過mui.openwindow開啟視窗向頁面傳遞引數
這種傳值方法通常我們的做法如下:
在引數生成頁面中
mui.openwindow(,
extras: ,
waiting:
});
在引數接收頁面中
mui.plusready(function());
通常我們傳參就這麼進行,但是由於這個頁面,多次被開啟,發生了類似快取的現象,所以,有時候這個plusready不能保證每次都能執行。所以,我增加了乙個自定義事件,來改變這個情況,實現方法如下(我是雙管齊下,plusready也獲取值,自定義事件也獲取值)。
那好,下面我演示一下我的方法(下面這個監聽乙個按鈕,然後開啟乙個頁面);
var apage = null;
mui.plusready(function() , //視窗引數
extras: //自定義擴充套件引數
});document.getelementbyid("bbtn").addeventlistener('tap',function(
mui.fire(apage, 'hahaha',);
apage.show();
});});
接下來,就到了引數接收頁面,如下(首先,我們還是要在plusready裡面接收一次,因為你不能保證這次是初次開啟還是第二次開啟頁面,所以,這個還是需要的。)
mui.plusready(function());
但是如果這個是非首次開啟的話,就不一定進來plusready了,所以,引數可能接收失敗了,這裡面,我們就要接收自定義事件傳過來的引數了,就是前面我們的fire那裡了。
//新增上乙個頁面自定義事件監聽
window.addeventlistener('hahaha', function(event) );
這樣,我們就能把這個引數獲取到,雙重保證,就沒有問題了。(如果你們需要謹慎一些,可以把這個自定義事件的監聽延遲個300毫秒,保證接收的概率,因為如果是這個自定義事件優先執行了,然後他又去執行這個plusready,那就會衝突了。)
三、通過本地儲存傳值
傳送引數的頁面:plus.storage.setitem("targetid","123");
接收引數的頁面:plus.storage.getitem("targetid");
參考:
MUI開發指南(四) MUI 頁面間傳值
extras 新視窗的額外擴充套件引數,可用來處理頁面間傳值 例如 var webview mui.openwindow console.log webview.name 輸出mui字串注意 擴充套件引數僅在開啟新視窗時有效,若目標視窗為預載入頁面,則通過mui.openwindow方法開啟時傳遞的...
php頁面之間傳值 PHP頁面間傳值的幾種方法
方法一 require once page a a hello page b require once a.php echo a.world 訪問b.php會得到 hello world!方法二 通過頁面跳轉時攜帶引數傳值 page a a world 點我跳到b.php page b echo h...
頁面間傳值的幾個方法
一 目前在asp.net中頁面傳值共有這麼幾種方式 1 表單提交,form1.submit 此種方在asp。net中無效,因為asp。net的表單總是提交到自身頁面,如果要提交到別一頁面,需要特殊處理。2 鏈結位址傳送 二 如果在兩個頁面間需要大量的引數要傳傳遞,如資料查詢等頁面時,用1 6的方法傳...