繁体   English   中英

jQuery Mobile-从一个数据角色页面移动到另一页面时如何传递参数?

[英]jquery mobile - how to pass a parameter when moving from one data-role page to another?

我正在编写一个小型而简单的jquery移动应用程序。

第一页是类别的列表视图,其中填充了从ajax请求中检索的json。

当用户单击类别之一时,应调用第二页。

它应该打开,并带有也会由ajax请求检索的项目列表。 该请求应获得category_id作为参数。

我正计划使用多页模式(同一html中有多个页面)。

这是我的js代码:

$(function() {

initListByUrl($("#categories_ul"), 'http://localhost:3000/categories');

});


function initListByUrl(id, requestUrl) {
$.ajax({
    url: requestUrl,
    type:'GET',
    dataType:'json',
    success: function(data) {
        var items = []
        $.each(data, function(i, elem) {
                items.push('<li id="cat_li_'+i+'"><a href="#items">' + elem.name + '</a></li>');
            });
        id.html(items).listview('refresh');
    }

});
}

类别的ID是elem中的另一个字段,我们假设-elem.id。 我如何将此ID作为参数传递给将构建第二页的代码? 我应该使用会话存储吗?

您可以使用javascript堆栈来推送和弹出每个页面所需的数据,例如您可以在elem.idpush elem.id,然后在被调用或查看的页面中pop并使用elem.id

var stack = [];
stack.push(3);
var data = stack.pop();
alert(data);

我已经根据MIT许可创建了一个与jQuery Mobile 1.4+兼容的插件。 该插件允许您使用URL参数在页面之间进行通信。 另外,由于数据在URL中,因此它可以处理页面刷新以及用户直接进入应用程序中的特定jQuery Mobile页面。 您可以在GitHub上找到它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM