全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

页面间固定参数,通过cookie传值的实现方法

最后在做的页面,比如用户数据(用户头像,名称,年龄)这些信息,因为大部分页面都要用,之前是通过url地址传,另一页面接收。考虑到这样做会让url过长,因此,尝试使用cookie,把固定的值保存在cookie,其它页面拿出来就可以使用。

在此之前,先写通过url传值与取值的过程。url通过跳转页面,给跳转页的url问号后拼接参数的方法传值:

//问号后的userId / dialogId都是要传的参数
//如果有多个参数,就用“&”拼接
window.location.href = 'doctor_ask.html?userId=' + userId + "&dialogId=" + dialogId;

在doctor_ask.html页面,把在url中的参数取下来,要使用一个方法getQueryString(),其中有一个方法是用来获取url中含有中文参数的:

/* 获取url后的某一个query的值 */
function getQueryString( name ) {
  var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
  var r = window.location.search.substr(1).match(reg); //获取url中"?"符后的字符串并正则匹配
  var context = "";
  if (r != null)
  context = r[2];
  reg = null;
  r = null;
  return context == null || context == "" || context == "undefined" ? "" : context;
}

//获取Url中中文参数的方法
function getQueryUrlString(name) {
  var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i');
  var r = window.location.search.substr(1).match(reg);
  if(r != null) {
    return decodeURI(r[2]);
  }
  return "请选择";
}

使用方法获取参数:

//调用方法获取参数,方法中的参数名是一个字符串
var userId = getQueryString('userId')

第二种,通过cookie方法传值,我这里使用的是jQuery cookie,因此需要先加载jQuery与cookie:

<!--使用cookie-->
<script src="https://cdn.bootcss.com/jquery/1.11.0/jquery.min.js"></script>
<script src="http://code.changer.hk/jquery/plugins/jquery.cookie.js"></script>

在其中一个页面,比如首页,将要保存的值存放在cookie.

如果仅是一个id,直接使用键值对的方法保存即可:

//将id保存在cookie
$.cookie('doctorId', '11916111-f2eb-11e4-b756-f40669963d49');
//从cookie中取出id
var doctorId = $.cookie('doctorId');

如果是多个值,需要将多个值放在对象中,保存这个对象:

//将多个值存放在对象中
var userData = {
  userId: "11916122-f2eb-11e4-b756-f40669963d49",
  patientName: "张丽",
  patientAge: 23,
  patientSex: "F"
}
//将这个对象保存在cookie,它的键是对象名称,值为JSON.stirng(),目的是将这个对象解析为字符串,因为cookie的键与值都是字符串
$.cookie('userData' , JSON.stringify(userData));

如果在其它页面使用这个cookie中对象,可以取出这个对象并将对象转换为字符串

var userData = $.cookie('userData');
if(userData){
//JSON.parse() 将字符串解析为对象,方便使用
  userData = JSON.parse(userData);  
};

两个知识点:

//字符串解析为对象
JSON.parse(对象名称);
//对象解析为字符串
JSON.stringify(对象名称);

以上这篇页面间固定参数,通过cookie传值的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。


# cookie传值  # asp.net中使用cookie传递参数的方法  # javascript静态页面传值的三种方法分享  # C#实现.net页面之间传值传参方法汇总  # 多个  # 都是  # 放在  # 给大家  # 跳转  # 的是  # 是一个  # 在此  # 希望能  # 这样做  # 要用  # 并将  # 会让  # 考虑到  # 仅是  # 请选择  # 在对  # 拿出来  # 这篇  # 就用 


相关文章: 测试制作网站有哪些,测试性取向的权威测试或者网站?  如何通过FTP服务器快速搭建网站?  黑客入侵网站服务器的常见手法有哪些?  三星网站视频制作教程下载,三星w23网页如何全屏?  如何快速搭建高效简练网站?  如何选择长沙网站建站模板?H5响应式与品牌定制哪个更优?  如何安全更换建站之星模板并保留数据?  音乐网站服务器如何优化API响应速度?  常州企业网站制作公司,全国继续教育网怎么登录?  微信小程序制作网站有哪些,微信小程序需要做网站吗?  建站主机服务器选型指南与性能优化方案解析  在线教育网站制作平台,山西立德教育官网?  成都响应式网站开发,dw怎么把手机适应页面变成网页?  如何在宝塔面板中修改默认建站目录?  宝塔建站教程:一键部署配置流程与SEO优化实战指南  建站之星如何实现网站加密操作?  如何快速搭建响应式可视化网站?  建站之星后台密码遗忘如何找回?  建站之星CMS五站合一模板配置与SEO优化指南  如何快速搭建高效香港服务器网站?  javascript中对象的定义、使用以及对象和原型链操作小结  宝塔面板如何快速创建新站点?  建站主机选择指南:服务器配置与SEO优化实战技巧  相册网站制作软件,图片上的网址怎么复制?  如何做网站制作流程,*游戏网站怎么搭建?  大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?  建站ABC备案流程中有哪些关键注意事项?  如何解决VPS建站LNMP环境配置常见问题?  制作电商网页,电商供应链怎么做?  Swift中switch语句区间和元组模式匹配  建站之星ASP如何实现CMS高效搭建与安全管理?  图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?  如何在阿里云部署织梦网站?  宝塔新建站点报错如何解决?  建站VPS能否同时实现高效与安全翻墙?  网站制作大概要多少钱一个,做一个平台网站大概多少钱?  济南专业网站制作公司,济南信息工程学校怎么样?  ,sp开头的版面叫什么?  如何基于云服务器快速搭建个人网站?  Thinkphp 中 distinct 的用法解析  如何打造高效商业网站?建站目的决定转化率  建站主机解析:虚拟主机配置与服务器选择指南  怎么将XML数据可视化 D3.js加载XML  如何通过商城自助建站源码实现零基础高效建站?  关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)  武汉网站如何制作,黄黄高铁武穴北站途经哪些村庄?  Java解压缩zip - 解压缩多个文件或文件夹实例  娃派WAP自助建站:免费模板+移动优化,快速打造专业网站  开心动漫网站制作软件下载,十分开心动画为何停播?  建站之星上传入口如何快速找到? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。