javascript - 如何在 Angular js(或)JQuery 中更新 Cookie 值

标签 javascript jquery cookies

我对更新 Cookie 值感到震惊。这里我使用 Angular js 进行描述。 在这里我需要更新现有的 cookie,但我无法更新该 cookie。

这是我的代码,请任何人评论并建议我。

$.ajax({
    type : "POST",
    url : appUrl + "/Login",
    data : {
        username : user,
        password : pwd,
        page : "home"
    },
    dataType : 'json',
    success : function(obj) {
        if (obj.direction != "") {
            var myAry = obj.LoginUserDetails[0];
            //alert("The json array is---->>>"+myAry.partnerid);
            setCookie('LoginDetails', JSON.stringify(myAry));

经过一番操作后,我得到了这样的 cookie

var storedAry = JSON.parse(getCookie('LoginDetails'));

并执行一些操作

.ajax({
 url : appUrl+ '/EditPartner',
data : data1,                                                                                        
cache : false,                                                          
contentType : false,
processData : false,                                                                                                                                       
type : 'POST',                                                  
success : function(data) {                                                  
var txt = data;                                                 
var obj = eval('('+ txt + ')');                                                 

loginuserdetails = obj.allregdetails[0];// setCookie('LoginDetails',                                                        

使用此 cookie 后,现在我想更新我的 cookie,为此我遵循了以下过程

setCookie('LoginDetails', JSON.stringify(myAry));//but not succedd so try below code


document.cookie = "LoginDetails"+ "="+ escape(JSON.stringify(loginuserdetails));

之后我通过获取 cokkie 值进行测试,但未更新

var logindetailsvalues = JSON.parse(getCookie('LoginDetails'));                                                             
console.log("details after updation---->>"+ getCookie('LoginDetails'));                                                             

最佳答案

对于 Angular 使用 Angular cookies 文件 ($cookieStore) http://jsfiddle.net/krimple/9dSb2/

var myApp = angular.module('myApp', ['ngCookies']);

myApp.controller('CookieCtrl', function ($scope, $rootScope, $cookieStore) {
    $scope.bump = function () {
        var lastVal = $cookieStore.get('lastValue');
        if (!lastVal) {
            $rootScope.lastVal = 1;
        } else {
            $rootScope.lastVal = lastVal + 1;
        }
        $cookieStore.put('lastValue', $rootScope.lastVal);
    }
});

myApp.controller('ShowerCtrl', function () {
});

其他示例

<script>
    angular.module('myApp', ['ngCookies']);
    function CookieCtrl($scope, $cookieStore) {
    $scope.lastVal = $cookieStore.get('tab');

    $scope.changeTab = function(tabName){
        $scope.lastVal = tabName;
        $cookieStore.put('tab', tabName);
    };
    }
</script>

对于 Jquery

使用https://github.com/carhartl/jquery-cookie
示例代码

$.cookie('the_cookie', 'the_value', { expires: 7 });
$.cookie('the_cookie', 'the_value', { expires: 7, path: '/' });
$.cookie('the_cookie'); // reading => "the_value" 
$.removeCookie('the_cookie');

关于javascript - 如何在 Angular js(或)JQuery 中更新 Cookie 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20185604/

相关文章:

C# HttpWebRequest 响应错误(401)

angularjs - 如何在 Angular 配置中使用 cookiesProvider

javascript - 如何获取 json 请求中输入的文本?

javascript - jQuery 表单,检查 radio 是否被选中

jquery - 如何对内容 block 进行动画处理?

jQuery addClass() 在给定 ID 的情况下不起作用

java - 编码java Cookie值

javascript - 如何修复提交按钮激活错误?

javascript - 强制 Firefox 在后退按钮上重新加载页面

javascript - 无法更改 'Select' 元素的位置 (ASP.net)