0

用户登录后,我在 HTML5 localstorage 中设置了他们的用户名。我想将用户名设置到下一页的顶部工具栏中,但由于某种原因,它不会更改changepage. 页面更改但未插入文本。我究竟做错了什么?

编辑

 success: function(data) { 
        if(data.status == "success") {
                $.mobile.changePage("inventory.html");
                var username = localStorage.getItem('username');
                $("#top_username").html(username);  
            };
        if(data.status == "failed") {
            alert('Incorrect Login Information');
            };
        }

编辑:

4

3 回答 3

0
$(function(){ // DOM is ready! wow, go for #top_username

    var username = localStorage.getItem('username');
    $("#top_username").html(username);

});
于 2012-12-08T04:58:25.597 回答
0

如果您要更改页面,则必须在新页面事件执行期间完成所有针对新页面的活动。

在您的情况下,您必须选择:

  1. 假设您的新页面 id 是 newpage 我们这个事件来改变它:

    $('#newpage').live('pagebeforeshow',function(e,data){
        var username = localStorage.getItem('username');
        $("#top_username").html('<h1>' + username + '</h1>');
    }
    
  2. $('#newpage').live('pagebeforeshow',function(e,data){
        // Get it from prevPage
        var username = data.prevPage.find('#username').val();
        $("#top_username").html('<h1>' + username + '</h1>');
    }
    
于 2012-12-08T17:06:20.310 回答
0

这是因为您正在尝试从上一页添加您的 html 内容

var username = localStorage.getItem('username');
$("#top_username").html(username); 

应该在inventory.html页面中,你应该在这样的函数里面

$(document).on('pageinit').

然后它应该可以完美运行。希望这会有所帮助。

于 2012-12-08T07:06:21.217 回答