您好,在我的应用程序中,我使用以下代码从一个div导航到另一个div,
$.mobile.navigate( "#formsEnterId", { info: "info about the #formsEnterIdhash" });
$("#formsEnterId").on('pagebeforeshow', function (event, data) {
console.log("Entered page before show::",data); //How to fetch the info here??
});
在pagebeforeshow事件中,我想要获取信息属性。我不知道如何获取 info属性。但页面导航成功。
我也使用$ .mobile.changepage但没有运气。
请有人协助我在pagebeforeShow事件中获取info属性。 我已经在Pass parameter between pages using jquery mobile
中看到了相关的答案但这并没有解决我的问题,因为我的页面导航脚本和pagebeforeshow事件处于不同的闭包之下。
答案 0 :(得分:0)
当所有内容都加载到DOM中时,我们可以创建一个用于数据存储的全局对象。
直播示例:http://jsfiddle.net/Gajotres/9KKbx/
var storeObject = {
parameter1: null,
parameter2 : null
}
// Store object
$(document).on('pagebeforeshow', '#second', function(e, data){
alert("My name is " + data.prevPage.find('#test-input').val());
});
另一种方法是将变量存储在本地存储
中$(document).on('pagebeforeshow', '#index', function(){
$(document).on('click', '#change-page-button', function(){
// store some data
if(typeof(Storage)!=="undefined") {
localStorage.firstname="Dragan";
localStorage.lastname="Gaic";
}
// Change page
$.mobile.changePage("#second");
});
});
$(document).on('pagebeforeshow', '#second', function(){
alert('My name is ' + localStorage.firstname + ' ' + localStorage.lastname);
// Lets change localStorage data before we go to the next page
localStorage.firstname="NewFirstNeme";
localStorage.lastname="NewLastName";
});
$(document).on('pagebeforeshow', '#third', function(){
alert('My name is ' + localStorage.firstname + ' ' + localStorage.lastname);
});