如何两个html页面之间传递接收数据?

我做一个购物网页的时候()。要求从一个商品详情页跳转到购物车页面(要求要有商品名,价格的数据)。购物车页面怎么收到商品页面的信息?我现在的工具只用到html和js,可以用他们实现吗?

阅读 15.6k
9 个回答

你可以把商品信息存到sessionStorage或者localStorage里面,然后到了购物车页面取完删掉啊

  1. 简单的传几个参数,把参数带在url中就行了;
  2. 复杂的可以使用localstorage,存储在本地,然后在其他页面获取,解析出来就行了。
  • url传值
// 第一个页面
<a id='a'>跳转</a>
<script>
    var a = document.getElementById('a');
    a.setAttribute('href', 'b.html?name='+name);
</script>
// 第二个页面解析
window.location.search
  • localStorage本地存储
// 第一个页面存值
localStorage.setItem('name', name);
// 第二个页面取值
localStorage.getItem('name');
  1. 把参数拼在url后边,从query里获取
  2. 存在本地存储里,短暂存储用sessionStorage,长久存储用localStorage
  3. 存在cookie里

1,sessionStorage 或者 localStorage 储存 商品信息

2,把商品 ID 在 URL 那里带过去,再从URL截取 ID 后重新请求商品信息

从一个商品详情页跳转到购物车页面,那应该是首先将商品加入到购物车,然后再跳转吧;而不是直接跳转过去的!

即使是要直接跳转,纯前端的话有两种方式:

  1. URL参数传递,前一个页面把变量都写在URL参数里,然后在后一个页面里拿;
  2. 用localStorage, sessionStorage, cookie,先存储,然后取出后销毁
  1. 如果同域,可以采用sessionStorage/localStorage等
  2. 如果不同域,可以在页面跳转前把参数追加到url中
  3. 为了避免有人搞事,最好是通过后台来做中转。

1、把参数放到url后面,跳转后解析
2、本地存储localStorage

先定义一个对象

var _goodsInfo = {}

设置一个函数储存

function setGoodsInfo (obj){
    _goodsInfo = obj
}

设置一个函数获取

function getGoodsInfo (){
    renturn _goodsInfo
}

点击某件商品时把数据传给

setGoodsInfo(数据)

然后在另一个页面获取

getGoodsInfo ()
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题