版权声明:如有转载请注明出处 https://blog.csdn.net/hdp134793/article/details/82493803
方式一:直接获取上个页面的数据;
这种方式主要依赖load这个方法的原理,这个其实就是一个本地ajax请求,所以前后两个页面是互通的,其数据是可以直接拿到的。实例如下:
a页面的代码:
<script>
var adata = "12";
$("#div").load("b.html");
//其实上面这句话等同于ajax请求
$.ajax({
url : "b.html",
type : "get",
dataType : "html",
success : function(result) {
//result是可以获取b页面的数据和dom节点的
},
error : function() {
}
});
</script>
b页面的代码
<script>
$(function(){
//b页面是直接能够获取的
console.log(adata);
//输出为"12"
});
</script>
方式二:通过post的方式传递,也就是在load()方法里传递参数;
a页面
$("#div").load("b.html",{adata:"12"});
那么这个传参的方式一般都晓得,重点在于下个页面如何获取传递的参数;
b页面获取方法:
<input type="hidden" id="adata" value="<%=request.getParameter("adata")%>"/>
<script>
var bdata = $("#adata").val();
console.log(bdata);//输出为"12"
</script>
方式三:先存放在浏览器缓存中,然后再拿出来
这种方式我前面的文章有些到过,但是还是稍微介绍下
a页面
sessionStorage.setItem("adata","123");
b页面
var bdata = sessionStorage.getItem("adata");
console.log(bdata);//输出为"12"
个人不是很推荐这种方式,主要受浏览器缓存限制,万一有人写了和你一样的缓存名称,就会存在数据获取混乱,具体的数据缓存介绍在前面的文章有介绍哟。
码字不易,希望喜欢的读者能给个小心心或关注哈。