If 语句不适用于 cookie

If statement not working with cookie

当用户点击上传按钮时,我将 cookie 值设置为 1:

$('.uploadbtn2').click(function(){
    $(this).val("Please wait...");
    $.cookie("upload",1,{ expires: 1, path: '/' });
    // the page then refreshes a few seconds later
});

if ($.cookie("upload")===1) {
    $('.upload-photo').show();
}

如果 cookie 的值等于 1,则弹出上传 div 显示。但是没有显示。

如果我这样做:

alert($.cookie("upload"))下面,提示“1”。

$('.upload-photo').show() 在 if 语句之外,div 显示。为什么它不起作用?

我会说需要将它转换为整数然后需要进行比较。请尝试

if (parseInt($.cookie("upload"))===1) {
    $('.upload-photo').show();
}

因为您通过 === 比较类型和值,您的 cookie 给您 1 作为字符串。

所以您可以应用两个选项,

任一

parseInt($.cookie("upload"))===1

$.cookie("upload") == 1