2010-05-13 12 views

risposta

49
if($.cookie('query') === null) { 
    $.cookie('query', '1', {expires:7, path:'/'}); 
} 

In alternativa, si potrebbe scrivere una funzione wrapper per questo:

jQuery.lazyCookie = function() { 
    if(jQuery.cookie(arguments[0]) !== null) return; 
    jQuery.cookie.apply(this, arguments); 
}; 

allora si sarebbe solo bisogno di scrivere questo nel codice client:

$.lazyCookie('query', '1', {expires:7, path:'/'}); 
+0

! = A == e accetterà presto la tua risposta poichè mi consente: P – Sphvn

+2

penso che '! =' Dovrebbe essere '==': p – Reigel

+0

@Ozaki, Ha funzionato? –

5

questo ??

$.cookie('query', '1'); //sets to 1... 
$.cookie('query', null); // delete it... 
$.cookie('query'); //gets the value.... 

if ($.cookie('query') == null){ //Check to see if a cookie with name of "query" exists 
    $.cookie('query', '1'); //If not create a cookie "query" with a value of 1. 
} // If so nothing. 

cosa vuoi di più ??

+0

@Ozaki - Immagino che tu abbia frainteso. .. quello che sto cercando di mostrare sono le opzioni possibili ... beh, sono contento che tu l'abbia risolto ora ... :) grazie! – Reigel

6

Simile alla risposta di Jacobs ma preferisco testare per undefined.

if($.cookie('query') == undefined){ 
    $.cookie('query', 1, { expires: 1 }); 
} 
+1

Con l'ultimo aggiornamento dallo script, 'null' è ora deprecato e deve essere usato' undefined'. – Warface

+0

Perché dici che "null" è ora deprecato? Non sono stato in grado di trovare materiale di supporto su questo online. Vedi [qui] (https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Deprecated_and_obsolete_features). – Rodiwa

Problemi correlati