使用jquery mobile在页面之间传递参数

2024-04-23

jquery mobile 中页面之间传递参数的正确方法是什么?在jquery mobile的Q&A中,有一些插件的建议。是强制性的吗?请告诉我正确的方法。没有一个具体的答案。我必须为页面中的所有链接传递参数。

http://view.jquerymobile.com/master/demos/faq/pass-query-params-to-page.php http://view.jquerymobile.com/master/demos/faq/pass-query-params-to-page.php


页面转换之间的数据/参数操作

在页面转换期间可以将参数从一个页面发送到另一页面。这可以通过几种方式来完成。

参考:https://stackoverflow.com/a/13932240/1848600 https://stackoverflow.com/a/13932240/1848600

解决方案一:

您可以使用changePage传递值:

$.mobile.changePage('page2.html', { dataUrl : "page2.html?paremeter=123", data : { 'paremeter' : '123' }, reloadPage : true, changeHash : true });

并像这样阅读它们:

$(document).on('pagebeforeshow', "#index", function (event, data) {
    var parameters = $(this).data("url").split("?")[1];;
    parameter = parameters.replace("parameter=","");  
    alert(parameter);
});

[示例][3]:

索引.html

<!DOCTYPE html>
  <html>
    <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="widdiv=device-widdiv, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
    <meta name="apple-mobile-web-app-capable" content="yes" />
    <meta name="apple-mobile-web-app-status-bar-style" content="black" />
    <title>
    </title>
    <link rel="stylesheet" href="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.css" />
    <script src="http://www.dragan-gaic.info/js/jquery-1.8.2.min.js">
    </script>
    <script src="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.js"></script>  
    <script>
        $(document).on('pagebeforeshow', "#index",function () {
            $(document).on('click', "#changePage",function () {     
                $.mobile.changePage('second.html', { dataUrl : "second.html?paremeter=123", data : { 'paremeter' : '123' }, reloadPage : false, changeHash : true });
            }); 
        }); 

        $(document).on('pagebeforeshow', "#second",function () {
            var parameters = $(this).data("url").split("?")[1];;
            parameter = parameters.replace("parameter=","");  
            alert(parameter);
        });         
    </script>
   </head>
   <body>
    <!-- Home -->
    <div data-role="page" id="index">
        <div data-role="header">
            <h3>
                First Page
            </h3>
        </div>
        <div data-role="content">
          <a data-role="button" id="changePage">Test</a>
        </div> <!--content-->
    </div><!--page-->

  </body>
</html>

第二个.html

<!DOCTYPE html>
  <html>
    <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="widdiv=device-widdiv, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
    <meta name="apple-mobile-web-app-capable" content="yes" />
    <meta name="apple-mobile-web-app-status-bar-style" content="black" />
    <title>
    </title>
    <link rel="stylesheet" href="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.css" />
    <script src="http://www.dragan-gaic.info/js/jquery-1.8.2.min.js">
    </script>
    <script src="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.js"></script>  
   </head>
   <body>
    <!-- Home -->
    <div data-role="page" id="second">
        <div data-role="header">
            <h3>
                Second Page
            </h3>
        </div>
        <div data-role="content">

        </div> <!--content-->
    </div><!--page-->

  </body>
</html>

解决方案2:

或者您可以创建一个持久的 javascript 对象用于存储目的。只要使用 ajax 进行页面加载(并且页面不会以任何方式重新加载),该对象就会保持活动状态。

var storeObject = {
    firstname : '',
    lastname : ''
}

例子:http://jsfiddle.net/Gajotres/9KKbx/ http://jsfiddle.net/Gajotres/9KKbx/

解决方案3:

您还可以像这样访问上一页的数据:

$('#index').live('pagebeforeshow', function (e, data) {
    alert(data.prevPage.attr('id'));
});   

prevPage对象保存完整的前一页。

解决方案4:

作为最后一个解决方案,我们有一个漂亮的 localStorage HTML 实现。它仅适用于 HTML5 浏览器(包括 Android 和 iOS 浏览器),但所有存储的数据通过页面刷新都是持久的。

if(typeof(Storage)!=="undefined") {
    localStorage.firstname="Dragan";
    localStorage.lastname="Gaic";            
}

例子:http://jsfiddle.net/Gajotres/J9NTr/ http://jsfiddle.net/Gajotres/J9NTr/

更多信息

如果您想了解有关此主题的更多信息,请查看此article http://www.gajotres.net/passing-data-between-jquery-mobile-pages/。您将找到多种带有示例的解决方案。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用jquery mobile在页面之间传递参数 的相关文章

  • 以一定时间间隔连续重复运行 JavaScript 函数

    这是我的第一个问题 希望您尽快回答 我想要代码连续重复一个函数 我尝试了一些代码 但没有成功 我尝试了这段代码 我想在一段时间后重复这个功能 我努力了setInterval and setTimeout 但是 我还没有收到结果 这将重复该任
  • 在 jQuery 可排序中对多个选定项目进行排序?

    我试图在 jQuery 可排序集中选择多个项目 然后将选定的项目一起移动 这是我的弱点开始尝试使其发挥作用 http jsfiddle net benstenson CgD8Y 这是代码 HTML div class container d
  • jQM / jquery-collagePlus 使用问题

    我正在使用 jQM 构建应用程序 并且尝试使用 jquery collagePlus http ed lea github io jquery collagePlus http ed lea github io jquery collage
  • 获取点击的的DOM路径

    HTML div class lol a class rightArrow href a div 伪代码 rightArrow click function rightArrowParents this dom dom is the pse
  • 当复选框条件更改时,如何使用ajax更新mysql数据库?

    我有一个在客户端按行显示的文章表 每篇文章都有一个唯一的 ID 并包含一个复选框以指示该文章是否被选中为收藏夹 如果它是最喜欢的 则该复选框已被选中 如果没有 则未选中 现在 如果特定于每一行的复选框条件发生变化 我需要 js 或 jque
  • 当播放器隐藏 div 时停止 JWPlayer

    我有一个网站 我正在使用 JavaScript 添加或删除 css 类 使用此方法 我可以根据需要隐藏或显示 div 效果很好 问题是 当我隐藏 窗口 或更准确地说 div 时 一个 div 使用 JWplayer 打开视频 声音仍在播放
  • Fancybox - Ajax 图片库

    我有一个自定义图像库 它用缩略图填充 div 每个缩略图都包含在一个 fancybox 组中 当您单击一个 它在 fancybox 中打开 时 您可以按 上一张 下一张 在第一 页面 上的图像之间循环 要在页面之间移动 您必须关闭 fanc
  • PHP、jQuery 和 Ajax 调用乱序

    我正在使用 jQuery 进行 Ajax 调用 我有 x 数量的 Ajax 调用附加到 div 这些 Ajax 加载请求是由 PHP foreach 循环生成的 问题是它们渲染的顺序不正确 它们被设置在数组中
  • 滚动时将菜单栏固定在顶部[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我见过一些网站 当用户向下滚动页面时 会在右侧或左侧弹出一个框 另外 注意到这个模板 http www mvpthemes com m
  • Arbor Js - 节点 Onclick?

    我在用着arbor js http arborjs org 创建图表 我如何创建一个onclick节点的事件 或者在单击时在某处创建节点链接 Arborjs org 主页的节点在单击时链接到外部页面 我如何复制它 或者使节点在单击时调用 j
  • IE8 中字符串的 indexOf 的替代函数是什么?

    我用过indexOf检查句子中是否存在特定文本 如下所示 var temp temp data not available if temp indexOf datas 0 alert True else alert false 我面临的问题
  • 如何使用 jquery-validate 本地化

    有没有办法使用存储库中现有的翻译来动态 即从 JS 代码 设置 更改错误消息的语言 非解决方案 1 加载本地化脚本
  • 如何在通过 .ajaxForm() 提交表单之前执行一些操作?

    我正在使用 ajaxForm 框架来发送我的数据 而无需重新加载我的页面 ReplayForm ajaxForm success function data alert Success 现在 我想在提交表单之前检查一些条件 如果条件为假 则
  • JQuery datepickers-从开始日期设置结束日期

    使用了两个 Jquery 日期选择器 StartDate 和 EndDate
  • 水平滚动的表格上的“粘性”标题......完全不可能?

    经过过去几个小时的研究后 我开始认为这是不可能的 即使在最新的浏览器上也是如此 HTML table具有水平滚动的元素 带有 粘性 thead在顶部 作为垂直滚动的周围网页的一部分 这是我的尝试 a height 100px backgro
  • 将纯文本转换为 HTML

    我有一个脚本 在某个时刻我可以通过 Ajax 调用获取 HTML 数据 我必须将此 HTML 转换为纯文本 如下所示 div text data 我现在想扭转这一局面 再次将文本设为 HTML 我有一个简单的 Jquery 方法可以做到这一
  • 使用 JQuery 禁用和启用所有超链接

    我有以下禁用所有超链接的内容 但在事件发生后我想再次启用它们 我该如何执行此操作 a click function return false 我认为这不仅仅是将其设置为 true 那么简单 谢谢大家 不要以这种方式绑定 点击 处理程序 而是
  • 销毁 JQuery 可拖动对象

    我有一组可拖动的元素 如何删除可拖动功能 draggable draggable disable 对我来说不是一个选择 draggable draggable destroy 回报Uncaught TypeError Cannot read
  • 使用 animate() 的简单 jQuery 幻灯片

    使用 jQuery 的animate 如何将每个图像滑动一次 使用Slick js https github com kenwheeler slick 像CSS动画 然后停在最后一个 div class slideshow style he
  • 如何动态调整jqgrid到当前窗口大小?

    如何动态调整jqgrid到当前窗口大小 基于javascript jQuery 最好的例子在这里 TinyMCE 去 http www tinymce com tryit full php http www tinymce com tryi

随机推荐

  • 禁用/启用 MFC 功能包的功能区按钮

    我正在使用 MFC 功能包 并且功能区栏上有一些按钮 即 CMFCRibbonButton 的实例 问题是我想在某些条件下启用和禁用其中一些 但在运行时 我怎样才能做到这一点 因为没有具体的方法 我听说解决方案是在运行时附加 分离事件处理程
  • 我可以让 GCC 在将太宽的类型传递给函数时发出警告吗?

    以下是一些明显有缺陷的代码 我认为编译器应该发出诊断信息 但两者都没有gcc nor g 确实如此 即使有我能想到的所有警告选项 pedantic Wall Wextra include
  • 从 C# 代码启动 Storyboard

    我试图从 C 调用在 xaml 代码中声明的故事板
  • 如何在 Entity Framework 4.1 的 Code-First Fluent API 中以编程方式定义关系

    我正在玩新的 EF4 1 unicorn love 我试图了解我可以使用的不同方式代码优先 to 以编程方式定义几个简单 POCO 之间的关系 我如何定义以下 gt 1 Team有0 多Users 和一个User是在 1Team 1 Use
  • djangorest框架模型序列化器 - 嵌套读取,扁平写入

    我遇到一种情况 我的客户正在尝试编写包含 fk 列表的表示 languages 1 last name Beecher settings 1 state NY 但是当读它时 我想要一个嵌套表示来减少往返次数 languages id 1 c
  • 在 Atom 中使用变量创建片段

    是否可以将变量合并到 Atom 中的片段中 例如 当您想要预先填充即将出现的点时 这对于 for 循环非常有用 The snippets cson我想以java作为源的条目 不幸的是它不起作用 source java For Loop pr
  • MobX 自动运行行为

    我正在探索 MobX 并对一个问题感兴趣 如果我有这个可观察的 class ItemsStore observable items 1 2 3 const store new ItemsStore 然后像这样改变它 setInterval
  • Django Admin:为两个管理站点使用不同的模板

    我有一个 Django 项目 有两个不同的管理站点 如中所述文档 http docs djangoproject com en 1 2 ref contrib admin multiple admin sites in the same u
  • 完美平衡二叉搜索树

    我有一个理论问题Balanced BST 我想建立Perfect Balanced Tree具有2 k 1节点 从常规unbalanced BST 我能想到的最简单的解决方案是使用排序Array Linked list并递归地将数组划分为子
  • R 合并具有相似值的行

    我有一个数据框 行值首先从小到大排序 我计算相邻行之间的行值差异 组合具有相似差异 例如 小于 1 的行 并返回组合行的平均值 我可以使用 for 循环检查每一行的差异 但这似乎是一种非常低效的方法 还有更好的想法吗 谢谢 library
  • Rails 对 :dependent => :destroy 和级联删除/无效/限制做什么

    我正在尝试决定如何最好地为我的 Rails 应用程序设置 如果有的话 外键约束 我有一个模型Response that belongs to a Prompt 我想用 dependent gt destroy摧毁每一个Response属于已
  • 如何在 Java 的 JTextPane 中创建自动完成弹出窗口?

    我正在创建一个 SQL 编辑器 我使用 JTextPane 作为编辑器 我想像 Eclipse 一样实现表名等的自动完成 我认为在另一个组件之上显示信息的适当类是JPopupMenu 它已经正确处理分层以显示自身 JPopupMenu 有一
  • Android 中的自定义键盘视图

    我正在开发一个自定义 Android 键盘 我开始开发我的键盘 基于this http code tutsplus com tutorials create a custom keyboard on android cms 22615教程
  • 对heroku postgresql DB的访问只能仅限于它的heroku应用程序吗?

    由于安全顾问的建议 我最近将一个应用程序从 heroku 迁移到 amazon ec2 然而 他对 Heroku 的了解并不深 疑问仍然存在 对 Heroku PostgreSQL 数据库的访问是否可以限制为只能由应用程序访问 您会推荐 H
  • 在 Windows Server 2003 中将控制台应用程序安装为 Windows 服务

    这可能是一个基本问题 所以提前道歉 我有一个控制台应用程序 我想在 Windows Server 2003 上测试它 我使用 4 0 框架在 C 中以发布模式构建了该应用程序 并将 bin 文件夹的内容粘贴到 windows server
  • 在 Objective-C 中以编程方式创建 .pem 文件?

    我正在尝试使用 iPhone 应用程序中的 Objective C 和 OpenSSL 库以编程方式从证书签名请求创建 PEM 文件 我按照 Adria Navarro 对这个问题的回答生成了 CSR 类型为 X509 REQ 使用钥匙串存
  • 从 Java / C# 角度理解 C++ 编译器

    我是一名经验丰富的 Java C 程序员 最近开始学习 C 问题是 我无法理解如何构建各种头文件和代码文件 这似乎主要是由于我对编译器如何将所有内容链接在一起缺乏了解 我尝试阅读一些教科书 但我的先入之见受到我的 Java 和 C 知识的影
  • 使用 AVPlayer 播放流媒体视频

    如何播放流媒体视频AVPlayer import Cocoa import AVKit class StreamViewController NSViewController var videoPlayer AVPlayer IBOutle
  • maven中这两个设置一样吗?

    我想限制maven仅使用私有 非公共maven存储库 这两个设置具有相同的效果吗 1 settings xml中设置镜像
  • 使用jquery mobile在页面之间传递参数

    jquery mobile 中页面之间传递参数的正确方法是什么 在jquery mobile的Q A中 有一些插件的建议 是强制性的吗 请告诉我正确的方法 没有一个具体的答案 我必须为页面中的所有链接传递参数 http view jquer