问题收集:网络上,这种$.session.get()等方法,在jq中使用操作session,需要注意的地方

    这两天做一个小项目,想在JQ中操作session,百度后出现了好多类似于这样的操作,就是先导入个jqSession,然后使用如下图的方法.

但是在使用后,发生了错误,经检验发现:

他的这个方法是有局限性的.

无法通过此方法去操作 采用其他方法设置的 session.

举例证明:

<script type="text/javascript">
	$('a').click(function(){
		alert("11");
		var y = '<%=request.getSession().getAttribute("uname") %>';
		alert(y);  //弹出admin,说明已经设置好了session中的k-v值
		var i = $.session.get("uname");
		alert(i);  //弹出undefined,但是并没有取到相关的值
		$.session.set("uname",y);
		var i = $.session.get("uname");
		alert(i);  //弹出admin,通过$.session.set()才能够取到
		$.session.remove("uname");
		var i = $.session.get("uname");
		alert(i);  //undefined,移除后为null
		var y = '<%=request.getSession().getAttribute("uname") %>';
		alert(y);  //admin, 去无法将req中的session中的k-v值移除
		window.parent.location.replace("Login.jsp");
	})
</script>
通过代码发现,$.session的这种方式 ,只能操作其自身的,也就是说,如果要使用这种方式,整个项目都要采用JQSession.

与是不是在同一页面无关.

例如:


我在前一页采用jqsession方式设置好后,

<script type="text/javascript">
	$('a').click(function(){
		alert("11");
		var y = '<%=request.getSession().getAttribute("uname") %>';
		alert(y);  //弹出admin,说明就算在前一页用$.session方式,后一页采用req是依然取不到
		var i = $.session.get("uname");
		alert(i);  //弹出qqqqq,获取到了
	})
</script>

最后总结:

    jqSession是一个好的方式,但是在运用的时候要整个项目都要采用,不然会出现偏差的.

    jqSession链接:https://ciphertrick.com/demo/jquerysession/js/jquerysession.js

    链接复制在迅雷里即可下载


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值