angularjs – 将对象转换为角度为json

前端之家收集整理的这篇文章主要介绍了angularjs – 将对象转换为角度为json前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图将对象转换为json在我的updateDetails方法但是在转换为json.Whats错误后在console.log中得到未定义?我的鳕鱼是..
HTML

<body ng-app="myApp" ng-controller="myCtrl" ng-init="init()">

                <form id="show_details" ng-repeat="data in editProjDetails">
                    <div>
                        <label><input type="text" class="form-control projectName required onlyAlphaNumeric" ng-model="data.ProjectName" ng-disabled="all"></label>
                    </div>
                    <div>
                        <label><input type="text" class="form-control client required onlyAlphabets" ng-model="data.Client" ng-disabled="all"></label>
                    </div>
                    <div id="projectCoOrdBlock">
                        <label><input type="text" class="form-control projectCoOrd  onlyAlphabets" ng-model="data.ProjectCoordinator" ng-disabled="true"></label>
                    </div>
                    <div>
                        <label><input type="text" class="form-control required onsiteCoOrd onlyAlphabets" ng-model="data.OnsiteCoordinator" ng-disabled="all"></label>
                    </div>
                    <div id="resourceBlock">
                        <label><input type="text"  class="form-control resource  onlyNumeric" ng-model="data.ResourceAllocated" ng-disabled="true"></label>
                    </div>
                    <div>
                        <span class="pull-right btnMarginTop">
                            <button class="btn btn-primary" id="projectDetailsEdit" ng-if="!editMode" ng-click="editDetails()">Edit</button>
                            <button class="btn btn-primary" id="projectDetailsUpdate" ng-if="editMode" ng-click="updateDetails(data)">Update</button>
                        </span>
                    </div>
                </form>
</body>

脚本

var app = angular
                    .module("myApp",[])
                    .controller("myCtrl",function ($scope,$http) {
                        $scope.editMode = false;
                        $scope.all = true;
                        $scope.init = function () {
                            $scope.getId();
                        }
                        $scope.getId = function () {
                            var url = document.URL;
                            var id = /id=([^&]+)/.exec(url)[1];
                            var result = id ? id : ' ';
                            $scope.getProjectDetails(result);   
                        }

                        $scope.goEvent = function () {
                            $scope.editMode = !$scope.editMode;
                        } 
                        $scope.updateDetails = function (data) {
                           debugger
                            $scope.editedArrayDetails = [];
                            $scope.editedArrayDetails.push(data);
                            $scope.json = angular.toJson($scope.data);
                            console.log($scope.data)
                            $scope.goEvent();
                        }
                    })

这是我的json fromat:

enter image description here

我想用这些名称保存我的数据

if ($scope.json) {
                                $scope.json = { "project_id": Id,"name": ProjectName,"client": Client,"onsite_coordinator": OnsiteCoordinator };
                            }

但我得到Id,ProjectName,Client,OnsiteCoordinator是未定义的.

解决方法

您将数据作为参数传递,因此您不应使用$scope前缀.而只是使用数据.

$scope.updateDetails = function (data) {
                        $scope.editedArrayDetails = [];
                        $scope.editedArrayDetails.push(data);
                        $scope.json = angular.toJson(data);
                        console.log($scope.json )
                        $scope.goEvent();
                    }

猜你在找的Angularjs相关文章