Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么下面的jquery告诉我我的cookie仍然存在?_Javascript_Jquery_Cookies - Fatal编程技术网

Javascript 为什么下面的jquery告诉我我的cookie仍然存在?

Javascript 为什么下面的jquery告诉我我的cookie仍然存在?,javascript,jquery,cookies,Javascript,Jquery,Cookies,我有一个loginform,它使用cookie来记住用户名输入和复选框选择的状态。我实现了一个按钮来重置表单,如下所示: <form id="login" action="~/Login?ReturnUrl=%2F" method="POST" class="form-horizontal"> ... <input id="formReset" type="reset" value="Reset" class="btn btn-default"/> <

我有一个loginform,它使用cookie来记住用户名输入和复选框选择的状态。我实现了一个按钮来重置表单,如下所示:

<form id="login" action="~/Login?ReturnUrl=%2F" method="POST" class="form-horizontal">
    ...
    <input id="formReset" type="reset" value="Reset" class="btn btn-default"/>
</form>

...
我用警报实现了jquery,只是为了告诉我发生了什么。我不明白的是,它总是告诉我cookie存在,即使当我在Chromes developer控制台中检查Resources->Cookies时它没有出现。我知道,如果我登录时将“记住我”复选框设置为true,则会设置cookie;如果再次登录时将复选框设置为false,则会取消设置cookie

我做错了什么

<script type="text/javascript">
    $('#formReset').click(function() {
        if ($.cookie('loginCookie') === null || $.cookie('loginCookie') === "") {
            alert("Cookie does not exist");
        } else {
            // $.removeCookie('loginCookie');
            alert("Cookie does exist");
        }
        $(this).closest('form')("input[type=text], textarea").val("");
    });
</script>

$('#formReset')。单击(函数(){
如果($.cookie('loginCookie')==null | |$.cookie('loginCookie')==”){
警报(“Cookie不存在”);
}否则{
//$.removeCookie('loginCookie');
警报(“Cookie确实存在”);
}
$(this).closest('form')(“输入[type=text],textarea”).val(“”);
});

您正在对不存在的cookie项使用严格相等运算符。
$cookie
返回
未定义的
,因此条件失败,请尝试改用否定运算符:

if (!$.cookie('loginCookie'))

尝试:如果(!$.cookie('loginCookie')){}而不是您的ifAre,您确定您的
==null
检查有效吗?它不能也是未定义的吗?(我想,但是没有js向导,
==null
会更正确吗?