如何在jQuery中使用会话变量?

时间:2017-09-26 00:46:29

标签: javascript jquery html session local-storage

我在一个页面上有一个按钮,另一个页面上有另一个按钮。第二个按钮中包含文本"选择了0个项目"。单击第一个按钮时,我想将第二个按钮中的数字增加一个。

看到它正在通过不同页面传输数据,我没有设法以标准方式进行。

请不要建议PHP,我无法使用它。



var yetVisited = localStorage[0];

if ($('.#CallToActionCustomise').click()){
	localStorage++;
}
$('.#CallToActionCustomise').click(function(){
	$(".Main_MenuButtonReview").append(localStorage);
});

<button class="Main_MenuButtonReview">0 items selected <i class="fa fa-caret-down"></i></button>
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:1)

您需要访问localStorage,就好像它是一个Object,而不是一个数组。

此外,您只能存储字符串值,因此要获得一个数字来执行数学运算,您需要使用parseInt

localStorage.setItem('yetVisited', 0);

$(".Main_MenuButtonReview").text(localStorage.yetVisited + ' items selected');

$('.CallToActionCustomise').click(function()){
    localStorage.yetVisited = parseInt(localStorage.yetVisited) + 1;
    $(".Main_MenuButtonReview").text(localStorage.yetVisited + ' items selected');
}

这是一个example

答案 1 :(得分:0)

除了上面的答案,我认为你需要在加载时初始化一些标记。

将此代码放在另一页上。

$(document).ready(function() {
    if (typeof localStorage.yetVisited === 'undefined') {
        localStorage.setItem('yetVisited', 0);
    }
    yetVisited = localStorage.yetVisited;
    $('.Main_MenuButtonReview').text(yetVisited + ' items selected');
});

$(document).ready(function() {
 // this area means after your page(document) ready completely.
});