2012-05-27 60 views
0

我想檢查兩個cookie的一個設定:檢查多個cookie jQuery的語法

if($.cookie("c1") != 'true' || $.cookie("c2") != 'true') { 

(然後根據不同的餅乾做一些動作,或設置cookie的)

是這是檢查是否第一個或第二個被設置的正確語法?

謝謝。

回答

2

正確的語法是

if($.cookie("c1") !== null || $.cookie("c2") !== null) { 

    // one of the cookies, or both, are set 

} 
else { 
    // none of the cookies are set 

} 

從您的評論,你所追求的可能是這樣的:

if($.cookie("c1") !== null && $.cookie("c2") !== null) { 

    // both cookies exist, let's check if they have the values we need 
    if($.cookie("c1") === "true" && $.cookie("c2") === "true") { 
     // they have 'true' as their content 

    } 
    else { 
     // they might exist, but both do not hold the value 'true' 

    } 
} 
else { 
    // none, or at least one of the two cookies are not set 

} 
+0

謝謝,實際上是 「真」 是的價值cookies,但看到你的評論「其中一個或兩個都設置了」幫助我明白,我的if語句不會以這種方式工作......我需要設置/檢查具有兩個不同值的cookie在用戶選擇,而不是設置/檢查兩個餅乾,我猜。 – elbatron

+1

檢查是否都設置了你應該使用'AND'運算符,在javascript中它是2 amp的符號'&&',如果只有兩個cookie存在,那隻會在語句內跳轉。我已經更新了我的答案來做到這一點。 – balexandre

+0

謝謝,我試過了,它可能工作,但不是在我的情況,你介意看看我的代碼在另一個問題http://stackoverflow.com/questions/10774625/user-select-cookie-set-check -with-jQuery的?] – elbatron