2

私の.aspxページでは、誰かが投票に投票したときに次のようにCookieを設定しました。

HttpContext.Current.Response.Cookies("poll")("poll_voted") = "yes"
HttpContext.Current.Response.Cookies("poll")("poll_id") = pID
HttpContext.Current.Response.Cookies("poll").Expires = Date.Now.AddDays(30)

ここで、jquery cookieプラグインを使用して、cookieが存在するかどうかを確認する必要があります。

// this works quite well...
if ($.cookie('poll', { poll_voted: 'yes' })) {  
    // now here, I need to get the value of poll_id but how???
}

任意のアイデアをいただければ幸いです。

4

2 に答える 2

3

このプラグインを追加してみてください-jquery.cookies.jsがすでにページにある必要があり、微調整を使用できると確信していますが、私が行っていた作業には十分でした。

(function ($, document) { 
    if($.cookie){
        $.cookieKey = function(CookieName, KeyName, Value, Options){
            var reg = new RegExp("(?:([^=]+)=([^&]*)&?)", "ig"),
            match = null,
            matches = [];
            var cookieVal = $.cookie(CookieName);
            while(match = reg.exec(cookieVal)){ 
                if(KeyName.toLowerCase() == match[1].toLowerCase()){
                    if(Value){ //we are updating, collect all values
                         matches.push([match[1], Value]);
                    }
                    else{
                        return match[2]; //we are getting, sub key found just return it
                    }
                }
                else if(Value){ //we are updating, collect all values
                    matches.push([match[1], match[2]]);
                }
            }                 

            if(Value){ //we are updating, update values
                updatedValue = "", 
                sep = "";
                for(i=0;i<matches;i++){
                    updatedValue += sep + matches[i][0] + "=" + matches[i][1];
                    sep = "&"
                }
                $.cookie(CookieName, updatedValue, Options);
            }           
            else return null;//we are getting, value not found
        }
    }
})(jQuery, document);

$.cookieKey("mycookiename", "keyname");//get sub key value
$.cookieKey("mycookiename", "keyname", "value");//set sub key value
$.cookieKey("mycookiename", "keyname", "value", {path: "/"});//set sub key value with cookie options
于 2013-07-11T14:51:36.110 に答える
1

$ .cookie( "poll")が配列の場合、これは機能します。

var mycookie = $.cookie("poll");
if(mycookie){
   var poll_id=mycookie["poll_id"];
}

mycookie変数のタイプは、firebugまたはchrome開発者ツールで確認できます。

于 2012-06-30T21:23:11.640 に答える