一、情景
eg:查看一条数据的详情,需要跳转页面,并进行传值
二、思路
方式1:触发详情按钮时,Js获取到该条数据的id值,并传递给url,后台接受到该请求,通过id查询到这条数据。并返回一个json串给前端。前端拿到数据进行处理,映射给页面。
方式2:触发详情按钮时,同时前端进行本地保存当前数据(sessionstorage\localstorage),跳转页面后,前端直接从storage当前取值并回显。
①关于数据存储:
sessionstorage:数据存储,关闭窗口的同时,清除数据
localstorage:数据存储,未定义过期时间,一直存在本地
需要注意的是:当前端页面发生跳转时,资源都会被重载,当未进行传值的情况下,无法跨页面加载数据。
三 实现:
方式1:URL传值
①获取id后直接传递给URL
window.location.href=`index.html?nid=${id}`;
②再跳转到index.html的js中获取到该并id解析
(function() {
window.onload = function() {
var url=window.location.href;
var url_param = url.split("?")[1];
var url_param_arr = url_param.split("=");
var nid ={nid:url_param_arr[1]};
preview_index(nid);//处理函数,发送请求
}
})();
方式2:本地存储
①存
//本地存储
var storage = window.sessionStorage;
storage['index_name'] = $('#index_name').val();
storage['index_title'] = $('#index_title').val();
storage['index_content'] = $('#index_content').val();
②读取
var storage=window.sessionStorage;
title=storage.index_title