web-dev-qa-db-ja.com

jQueryは、Cookieが存在するかどうかを確認し、存在しない場合は作成します

このコードを機能させることはできませんが、かなり単純なものを見逃しているに違いありません。 Cookieが存在するかどうか、{作成しない}場合は{何もしない}かどうかを確認しようとしています。ページにアラートを含めることで、Cookieをテストしています。基本的には、Cookieに参照URLを再作成し続けたくないので、最初に参照したURLのみを取得しようとしています。

$(document).ready(function(){   
  if ($.cookie('bas_referral') == null ){
   var ref = document.referrer.toLowerCase();  
   // set cookie  
   var cookURL =  $.cookie('bas_referral', ref, { expires: 1 }); 
  } 
 });  

現在のCookieの内容を表示する:

    // get cookie  
    alert($.cookie('bas_referral'));  

    // delete cookie  
     $.cookie('bas_referral', null);
36
ToddN

防弾方法は次のとおりだと思います:

if (typeof $.cookie('token') === 'undefined'){
 //no cookie
} else {
 //have cookie
}

Null、空、または未定義の変数の型をチェックすると、常に「未定義」が返されます

編集:さらに簡単にアクセスできます:

if (!!$.cookie('token')) {
 // have cookie
} else {
 // no cookie
}

!!は、 falsy をfalseに変更します。これにより0 falseに!

67
Laszlo
 $(document).ready(function() {

     var CookieSet = $.cookie('cookietitle', 'yourvalue');

     if (CookieSet == null) {
          // Do Nothing
     }
     if (jQuery.cookie('cookietitle')) {
          // Reactions
     }
 });
26
inertialmedia

私はこれを使用していたため、これで多くのトラブルが発生していました:

if($.cookie('token') === null || $.cookie('token') === "")
{
      //no cookie
}
else
{
     //have cookie
}

上記は、Cookieを設定するかどうかに関係なく、常にfalseを返していました。私のテストから、オブジェクトは設定される前に未定義であるように見えるので、コードに以下を追加すると修正されました。

if($.cookie('token') === null || $.cookie('token') === "" 
    || $.(cookie('token') === "null" || $.cookie('token') === undefined)
{
      //no cookie
}
else
{
     //have cookie
}
8
Android334

値付きで存在するかどうかを確認した後、Cookieを設定できます。

 $(document).ready(function(){            
      if ($.cookie('cookie')) { //if cookie isset
         //do stuff here like hide a popup when cookie isset
         //document.getElementById("hideElement").style.display = "none";
      }else{
         var CookieSet = $.cookie('cookie', 'value'); //set cookie
      }       
 });
1
ThomasAFink

これを非常に簡単に試してください:

            var cookieExist = $.cookie("status");
            if(cookieExist == "null" ){
                alert("Cookie Is Null");

            }