将javascript变量传递给下一个jQuery移动页面

时间:2014-01-12 02:01:35

标签: javascript jquery html html5 jquery-mobile

我在jQuery mobile #page1上从数据库创建了一个动态列表视图。 这一切都很完美。我可以看到包含我数据库中所有项目的列表(ID,名称......)

现在,我想在列表视图中点击某个项目后,将ID garm.ID从我的数据库项目传递到下一页。

我的JavaScript:

$(document).on("pagecreate", "#page1",function(){ 
    $(function() {
        $.ajaxSetup( {
            "async": false
        } );
        $.getJSON("http://server/kas1.js", function(data) {
            for(var i = 0; i < data.length; i++) {
                var garm = data[i];
                $.getJSON("http://server/kas2.js", function(data) {
                    var no = data[0].no;
                    $("#content-page1").append(
                        "<ul data-role=\"listview\">" +
                        "<li><a href=\"#page2\">" +
                        "<h2>Hello</h2>" +
                        "<p>Status:"+data[0].no+"</p>" +
                        "</a></li>" +
                        "</ul><br>"
                        );
                });
            }
        });
        $.ajaxSetup( {
            "async": true
        } );
    });   
});

您可以看到以下行:"<li><a href=\"#page2\">" +

使用此链接,您将重定向到下一页,在下一页我想使用传递的ID。

2 个答案:

答案 0 :(得分:2)

试试这个:

$(document).on("pagecreate", "#page1",function(){ 

    $(function() {
        $.ajaxSetup( { "async": false } );


        $.getJSON("http://server/kas1.js", function(data) {
            for(var i = 0; i < data.length; i++) {
                var garm = data[i];

                $.getJSON("http://server/kas2.js", function(data) {
                    var no = data[0].no;

                    $("#content-page1").append(
                        "<ul data-role=\"listview\">" +
                            "<li><a href='#page2?garm_id='" + garm.ID  + ">" +
                                "<h2>Hello</h2>" +
                                "<p>Status:"+data[0].no+"</p>" +
                            "</a></li>" +
                        "</ul><br>"
                    );
                });

            }
        });


        $.ajaxSetup( { "async": true } );
    });

});

第二页:

function queryStringParameters (keyValueString) {
    var query_string, whole_query_string, query_string_obj = {};
    if (typeof keyValueString === "undefined") {
        whole_query_string = window.location.search;
        if (whole_query_string[0] === "?") {
            query_string = whole_query_string.replace('?', '');
        } else {
            query_string = whole_query_string;
        }
    } else {
        query_string = keyValueString
    }
    var query_string_array = query_string.split('&');
    if (query_string !== '') {
        for (var i = 0; i < query_string_array.length; i++) {
            var query = query_string_array[i],
                query_array = query.split('=');
            query_string_obj[query_array[0]] = query_array[1] || '';
        }
        return query_string_obj;
    } else {
        return {};
    }
}


var hash = window.location.hash,
    queryString = hash.split('?')[1],
    garm = queryStringParameters(queryString),
    garm_id = garm.id;

答案 1 :(得分:0)

我希望这有效:

'<li><a href="#page2,garmId='+ garm.ID +'">'

然后,在第2页中,您可以(希望)解析主题标签以获取ID

希望这会有所帮助,欢呼