html cookie传参,前端页面间传值之cookie传值和url传值

大家好,我是小C:

我们在做一些网站需要传值交互,最近我就遇到了这问题,如果用H5的本地存储,IE8以下是不能支持的,但是官方说到IE8及以上就支持,但是某些版本还是存在问题。所以我们来看看下面两种方法吧!

第一种方法:url传值(就像可以通过超链接的href属性传值是一样的)

举例:

var Id = "1";

var name = "lili";

window.location.href = 'two.html?userId=' +Id + "&name=" + name;

那么在two.html中该怎么接收数据呢

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 "请选择";

}

$("#s").click(function(){

var userId = getQueryString('Id');

var dialogId = getQueryString('name');

alert(Id);

alert(name);

})

二:cookie传值(这个跟H5的本地存储的使用方法其实差不了多少。)

$(function(){

var data = {

id: "1",

name: "dingding",

age: 20

}

$.cookie('data',JSON.stringify(data));

window.location = "two.html";

})

切记:这里一定要把data对象通过方法JSON.stringify()方法序列化成字符串。因为,cookie只能传字符串

那么,在two.html中该如和取值呢

取值比较简单,唯一需要切记的就是从cookie中取到的是字符串类型的数据,不能直接使用,需要用JSON.parse()方法处理一下变成对象

具体如下

$(function(){

var data = $.cookie("data");

var m = JSON.parse(data);

console.log(m.id)//数据的使用

})

有不足的地方,请多多指教。

web前端页面解决中文传参乱码问题

问题背景:在项目中往往会涉及到前端跳转页面时要传一些参数给下一个页面,如果参数是英文或者数字的时候就很好解决,然而有时候传参会涉及到中文汉字,这个时候再单纯的拼接往往就会导致中文乱码,下面我们就该讨论 ...

页面间固定参数,通过cookie传值

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

asp.net页面间传值方式

使用asp.net开发项目,必然会在页面间进行传值,本文介绍几种常见的页面传值方式,仅作笔记,以便后续查找使用. 前提:新建两个页面:ValuePage.aspx,ObtainValue.aspx,本 ...

ASP.NET十分有用的页面间传值方法

一.目前在ASP.NET中页面传值共有这么几种方式: 1.表单提交,  

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值