首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >将参数传递给jQuery移动设备中的页面id

将参数传递给jQuery移动设备中的页面id
EN

Stack Overflow用户
提问于 2011-11-23 15:50:09
回答 2查看 14.5K关注 0票数 17

我正在尝试将一些参数传递给在jQuery手机中生成的页面id。

该站点由带有链接的列表视图组成,每个列表视图中都有散列编码,如下所示:

代码语言:javascript
复制
<li><a href="#pronostico?region=12&ciudad=0">Puerto Natales</a></li>

我绑定了pagebeforechange来捕获URL中的散列,做参数检测,并根据传递的参数数量采取行动。

现在,对于cookies,我一直在尝试这样做:

代码语言:javascript
复制
$(document).one("pageinit", function(event, data) {
  if (location.hash.search(/^(#ciudades|#pronostico)/) === -1) {
    if ($.cookie("recordar")) {
      $.mobile.changePage($("#pronostico"), {
        data: "region=" + $.cookie("region") + "&ciudad=" + $.cookie("ciudad")
      });
    }
  }
});

但它只是将我传递给#pronostico -id,散列中没有参数。结果,我得到了一个没有应该显示的信息的页面。

提前谢谢。

EN

回答 2

Stack Overflow用户

发布于 2014-09-29 20:16:15

不过,该插件不支持书签。如果你添加了一个页面更改处理程序,你可以通过在jQM完成后将参数放回url来解决这个问题:

代码语言:javascript
复制
// list of inner pages where you want to support params AND bookmarking
// maybe better to use a CSS class name to mark them
var $paramPages;
$(document).ready(function() {
    $paramPages = $('#book, #order');
});

// put the params back into the location once jQM is done
//
$( document ).bind( "pagechange", function( e, data ) {
    if (data.toPage.is($paramPages) && data.absUrl) {
        window.location.replace(data.absUrl);
    }
});
票数 2
EN

Stack Overflow用户

发布于 2016-01-04 11:22:47

在本例中,实现页面之间传递URL参数的一种方法是使用散列处理方法,该方法来自jQuery Mobile文档:http://demos.jquerymobile.com/1.4.1/navigation-hash-processing/

此解决方案似乎很理想,因为与其他解决方案不同的是,它会在页面之间更改时更新浏览器地址栏中的URL,以包括URL参数。这种方法还不需要使用任何插件,如'jqm.page.params‘。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8238762

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档