到目前为止,我已有使用会话存储的流程,并且无法将数据存储到会话存储中。
当用户从前端收到优惠券时

<p id="coupons">No. XXXXX </p>


我想获取值XXXXX并将其存储到会话存储中,以便当用户希望接收另一个优惠券代码(随机生成)时,由于他们已经将这些优惠券存储在会话存储中,并且使用var check = 1,因此无法接收。如下

var coupons = document.getElementById("coupons");
    sessionStorage.setItem("flat" , 0);

    if(typeof(Storage) !== "undefined" || typeof(Storage) !== 0){
        sessionStorage.setItem("flat", 1);
        sessionStorage.coupons = coupons.value;
        sessionStorage.setItem("coupon", sessionStorage.coupons);

    } else {
        console.log("Already received the coupon");
    }


当我在浏览器上检查时,它仅是flat = 1,我没有看到要存储的值XXXXX。而且,当刷新浏览器以获取“已收到优惠券”时,我无法检查Flat = 1。在这种情况下有什么问题,请帮忙。谢谢

最佳答案

您不能使用.value来获取文本,需要使用.innerText



    var coupons = document.getElementById("coupons");
    var val = coupons.value;
    console.log(val);  // val == undefined

    var val = coupons.innerText;
    console.log(val);  // val == test

<div id="coupons">test</div>

09-10 18:17