Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ng重复将某些值保存为cookie_Javascript_Angularjs_Cookies - Fatal编程技术网

Javascript ng重复将某些值保存为cookie

Javascript ng重复将某些值保存为cookie,javascript,angularjs,cookies,Javascript,Angularjs,Cookies,我使用$http获取JSON数据,并使用ng repeat(表格式)显示它。我想在每个表数据中添加一个按钮,因此单击该按钮,该值将保存为cookie。请在这里帮助我查看: <script src="~/Scripts/angular.js"></script> <script type="text/javascript"> function createCookie(name, value, days) { if (days) {

我使用$http获取JSON数据,并使用ng repeat(表格式)显示它。我想在每个表数据中添加一个按钮,因此单击该按钮,该值将保存为cookie。请在这里帮助我查看:

<script src="~/Scripts/angular.js"></script>
<script type="text/javascript">

    function createCookie(name, value, days) {
        if (days) {
            var date = new Date();
            date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
            var expires = "; expires=" + date.toGMTString();
        }
        else var expires = "";
        document.cookie = name + "=" + value + expires + "; path=/";
    }

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

    myApp.controller('controller', function ($scope, $http, $compile) {

        $scope.employees = [{ "name": "Employee1", "surname": "Surname1" },
                            { "name": "Employee2", "surname": "Surname2" },
                            { "name": "Employee3", "surname": "Surname3" },
                            { "name": "Employee4", "surname": "Surname4" }];

        $scope.AddCookie = function (employee) {

            debugger;
            var cookie = employee.name + " " + employee.surname;
            createCookie("Employee", cookie, 1);

        }
    });

</script>

<div ng-app="myApp" ng-controller="controller">
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Surname</th>
            </tr>
        </thead>
        <tbody>
            <tr ng-repeat="e in employees">
                <td>{{e.name}}</td>
                <td>{{e.surname}}</td>
                <td><input type="button" value="Add Cooke" ng-click="AddCookie(e)"/></td>
            </tr>
        </tbody>
    </table>
</div>

函数createCookie(名称、值、天数){
如果(天){
变量日期=新日期();
date.setTime(date.getTime()+(天*24*60*60*1000));
var expires=“;expires=“+date.togmString();
}
else var expires=“”;
document.cookie=name+“=”+value+expires+“path=/”;
}
var myApp=angular.module(“myApp”,[]);
控制器('controller',函数($scope,$http,$compile){
$scope.employees=[{“姓名”:“雇员1”,“姓氏”:“姓氏1”},
{“姓名”:“雇员2”,“姓氏”:“姓氏2”},
{“姓名”:“雇员3”,“姓氏”:“姓氏3”},
{“姓名”:“雇员4”,“姓氏”:“姓氏4}];
$scope.AddCookie=函数(员工){
调试器;
var cookie=employee.name+“”+employee.name;
createCookie(“员工”,cookie,1);
}
});
名称
姓
{{e.name}}
{{e.姓氏}}
这是你的饼干:

<script src="~/Scripts/angular.js"></script>
<script type="text/javascript">

    function createCookie(name, value, days) {
        if (days) {
            var date = new Date();
            date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
            var expires = "; expires=" + date.toGMTString();
        }
        else var expires = "";
        document.cookie = name + "=" + value + expires + "; path=/";
    }

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

    myApp.controller('controller', function ($scope, $http, $compile) {

        $scope.employees = [{ "name": "Employee1", "surname": "Surname1" },
                            { "name": "Employee2", "surname": "Surname2" },
                            { "name": "Employee3", "surname": "Surname3" },
                            { "name": "Employee4", "surname": "Surname4" }];

        $scope.AddCookie = function (employee) {

            debugger;
            var cookie = employee.name + " " + employee.surname;
            createCookie("Employee", cookie, 1);

        }
    });

</script>

<div ng-app="myApp" ng-controller="controller">
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Surname</th>
            </tr>
        </thead>
        <tbody>
            <tr ng-repeat="e in employees">
                <td>{{e.name}}</td>
                <td>{{e.surname}}</td>
                <td><input type="button" value="Add Cooke" ng-click="AddCookie(e)"/></td>
            </tr>
        </tbody>
    </table>
</div>

这是w3学校关于使用JavaScript的Cookie的教程……但是你也可以使用localStorage来存储数据。我在这里说的是AngularJSI在我的回答中没有访问名为“word”的属性。这可能发生在你页面上的其他一些代码中。如果你将我的代码按原样粘贴到页面中,你会看到它是有效的没有任何错误。我建议使用Google Chrome(Ctrl+Shift+J)中的调试器工具来调试js,并查看错误发生的确切位置。经过修复,我没有更改模板中的属性,现在的问题是我只能添加一个正在保存的cookie,我想添加更多。因此,请确保您的cookie的名称是唯一的。因为当您将其设置为其他值时,它会被覆盖Hanks@Denis Wessels,请您帮助我取回这些cookie,并使用ng repeat指令打印它们?