在JQueryMobile开发手机端应用使用可能需要考虑相关的页面跳转带来的参数问题。因为JQueryMobile其实也是HTML5实践的结果。HTML5中有localStorage和sessionStorage使用。最好采用Storage实现比较简单易用。

例如在页面A跳转B页面,在A跳转前将跳转参数注入到localStorage中,在B页面初始化获取localStorage相关的页面参数。并做相应的处理同时在适当的页面清理页面参数。

storage.js内容如下:

  1. function kset(key, value){
  2. console.log("key"+key+"value"+value);
  3. window.localStorage.setItem(key, value);
  4. }
  5. function kget(key){
  6. console.log(key);
  7. return window.localStorage.getItem(key);
  8. }
  9. function kremove(key){
  10. window.localStorage.removeItem(key);
  11. }
  12. function kclear(){
  13. window.localStorage.clear();
  14. }
  15. //测试更新方法
  16. function kupdate(key,value){
  17. window.localStorage.removeItem(key);
  18. window.localStorage.setItem(key, value);
  19. }

举例如下:

简单封装如下:

  1. //临时存储
  2. var TempCache = {
  3. cache:function(value){
  4. localStorage.setItem("EasyWayTempCache",value);
  5. },
  6. getCache:function(){
  7. return  localStorage.getItem("EasyWayTempCache");
  8. },
  9. setItem:function(key,value){
  10. localStorage.setItem(key,value);
  11. },
  12. getItem:function(key){
  13. return localStorage.getItem(key);
  14. },
  15. removeItem:function(key){
  16. return localStorage.removeItem(key);
  17. }
  18. };

在A页面的内容:

绑定所有workorderclass样式的div

设置相关的页面参数:

  1. //绑定视图的列表的相关的信息
  2. function bindListView(changeData){
  3. $(".workorderclass").each(function(){
  4. $(this).click(function(){
  5. //绑定订单的编号,便于在下一个页面切换时候使用
  6. TempCache.setItem("order_function_mgr_id",$(this).attr("id"));
  7. TempCache.setItem("order_function","serviceOrderFunction");
  8. TempCache.setItem("order_function_mgr_id_w",$(this).attr("id"));
  9. });
  10. });
  11. }

在页面B的初始化方法中:

使用并适时清空页面的storage、。

  1. //工单展示的初始化信息
  2. function displayWorkOrder(){
  3. //绑定订单的编号,便于在下一个页面切换时候使用
  4. var workOrderId=TempCache.getItem("order_function_mgr_id");
  5. workOrderId=workOrderId.replace(/(^\s*)|(\s*$)/g,"");
  6. //追踪工单来源
  7. functionName=TempCache.getItem("order_function");
  8. functionName=functionName.replace(/(^\s*)|(\s*$)/g,"");
  9. if(workOrderId!=''){
  10. queryWorkOrderInfo(workOrderId,functionName);
  11. TempCache.removeItem("order_function_mgr_id");       }else{
  12. alert("服务请求失败,请稍候再试....");
  13. }
  14. }

如有不懂的地方,欢迎沟通谢谢!

JQueryMobile页面跳转参数的传递解决方案的更多相关文章

  1. Android first --- 页面跳转及数据传递

    页面跳转即数据传递 创建第二个界面Acivity *需要在清单文件中添加配置一个Actuvity标签 标签中如果带有这个子节点,则会在Android中添加一个快捷图标 <intent-filte ...

  2. 微信小程序 页面跳转navigator与传递参数

    页面之间跳转使用 navigator标签,wx.navigateTo ,wx.redirectTo 1.URL就是跳转的页面路径.上面代码中就是navigator目录下的navigator页面,tit ...

  3. angular4 在页面跳转的时候传递多个参数到新页面

    页面跳转 router.navigate //单一参数: this.router.navigate(['/detail',id]); //多个参数: this.router.navigate(['/d ...

  4. jquerymobile页面跳转和参数传递

    http://blog.csdn.net/chen052210123/article/details/7481578 页面跳转: 页面跳转时pagebeforechange事件会被触发两次,通过$(d ...

  5. iOS页面跳转及数据传递

    转: http://blog.csdn.net/wang9834664/article/details/8025571 iOS页面跳转: 第一种 [self.navigationController  ...

  6. Android应用开发基础之六:页面跳转和数据传递

    创建第二个Activity 需要在清单文件中为其配置一个activity标签 标签中如果带有这个子节点,则会在系统中多创建一个快捷图标 <intent-filter> <action ...

  7. android 学习随笔十四(页面跳转与数据传递)

    1.activity 创建第二个Activity 需要在清单文件中为其配置一个activity标签 标签中如果带有这个子节点,则会在系统中多创建一个快捷图标 <intent-filter> ...

  8. Android初级教程理论知识(第五章页面跳转和数据传递)

    总体概述: Android四大组件 Activity BroadCastReceiver Service ContentProvider 创建第二个activity 新创建的activity,必须在清 ...

  9. struts2 action 页面与action参数的传递的三种方式

    第一种: 初始页面: <form action="LoginAction.action" method="post"> 用户名:<input ...

随机推荐

  1. jquery元素定位方法

    用chrome浏览器打开页面,按f12调出开发者调试模式,查看elements,部分代码如下图所示,注意红框部分 假设我们要查找某些元素的位置,用鼠标移到那部分元素,调试器会自动用蓝颜色标示选中部分的 ...

  2. NewtonPrincipia_物体的运动_求向心力

    NewtonPrincipia_物体的运动_求向心力 让我们看一下十七世纪的被苹果砸中的艾萨克,是怎样推导出向心力公式的 在现在的观点看来,其中涉及到的很多没有符号表示的微分量.下面的内容只是叙述了推 ...

  3. 封装cookie.js、EventUtil.js、

    最近学习了javascript,封装好的东西看起来舒服,以备需要的时候拉出来,jquery对javascript做了很好的封装!以后会多用jquery多些 var CookieUtil = { get ...

  4. Delphi中BitBlt函数实现屏幕对象抓图

    uses WinTypes, WinProcs, Forms, Controls, Classes, Graphics; function CaptureScreenRect( ARect: TRec ...

  5. (转)PHP开发框架浅析

    开发框架的定义我没有找到很准确的描述,下面几句话基本概括了开发框架的的功能和用途 框架是一种应用程序的半成品: 框架就像是人的骨骼一样: 框架是一组可复用的组件: 框架是一个可复用的设计构件…… 简而 ...

  6. Hadoop概念学习系列之hadoop生态系统闲谈(二十五)

    分层次讲解 最底层平台 ------->hdfs  yarn  mapreduce spark 应用层-------->hbase  hive   pig   sparkSQL    nu ...

  7. Java的位运算符—— 与(&)、非(~)、或(|)、异或(^)

    位运算符主要针对二进制,它包括了:“与”.“非”.“或”.“异或”.从表面上看似乎有点像逻辑运算符,但逻辑运算符是针对两个关系运算符来进行逻辑运算,而位运算符主要针对两个二进制数的位进行逻辑运算.下面 ...

  8. G450 Ubuntu14 无线网卡解决

    安装了Ubuntu14,与win7共存. grub界面启动. G450的本子,安装完之后发现无线网卡不能被驱动,但能被之别到,因此激活一次broadcom sta wireless driver 命令 ...

  9. Linux查看系统信息命令总结

    系统 # uname -a               # 查看内核/操作系统/CPU信息 # head -n 1 /etc/issue   # 查看操作系统版本 # cat /proc/cpuinf ...

  10. ACM之数学题

    数学题,始终记得,第一次被带飞师大校赛以及省赛,毫无例外的在数学题上卡死....因此,现在开始,有意识的保留遇见的数学题...(下列知识点按遇见先后顺序排列: 1欧拉公式 欧拉公式的用处是,找出小于N ...