获取/设置数字值到本地存储

ran*_*234 3 html javascript jquery storage local

我正在尝试使用本地存储来存储一个数字,以便即使我刷新或重新访问页面它也会保持不变,但是每当我刷新时,返回值为 0。

我知道这可能是一个我无法弄清楚的非常简单的解决方法,但我非常感谢这个初学者(可能)简单问题的答案。

如果您想知道这是针对星级评分系统的。

HTML:

<p id="r1"></p>
Run Code Online (Sandbox Code Playgroud)

jQuery:

$(document).ready(function(){
    var x1;
    x1 = +localStorage.getItem("x1");
    $("#r1").html("Your rating: " + x1);

    $("#rating1 span").click(function() {
        x1 = 5 - $(this).index();
        $("#r1").html("Your rating: " + x1);
    });

    localStorage.setItem("x1", x1);
});
Run Code Online (Sandbox Code Playgroud)

Bar*_*mar 5

第一个问题是,当您使用 检索它时,您没有提供本地存储项的名称getItem,应该是localStorage.getItem("x1").

第二个问题是你在setItem()页面加载时调用,而不是在用户点击评级时调用,所以它没有使用用户选择的评级。

$(document).ready(function(){
    var x1;
    x1 = +localStorage.getItem("x1");
    $("#r1").html("Your rating: " + x1);

    $("#rating1 span").click(function() {
        var x1 = 5 - $(this).index();
        $("#r1").html("Your rating: " + x1);
        localStorage.setItem("x1", x1);
    });
});
Run Code Online (Sandbox Code Playgroud)