不应该由HTML页面更改JavaScript对象

时间:2015-02-10 19:28:05

标签: angularjs angularjs-scope

我正在使用Angular Framework创建SPA。我想要做的是当用户点击表单的取消按钮时,显示的数据应该回到其原始状态。为此,我使用一个JavaScript对象来保存原始信息,然后使用angular.copy()将原始信息复制到$ scope变量进行显示。

保存信息的代码。

getInfo.getMoreInformation("/views/people/" + $scope.vendorguid +"/payroll-details").success(function(data, status, headers, config){


            dataOracle = data.data['oracle-user'];

            $scope.oracle = {};

            $scope.oracle = data.data['oracle-user'];   


    })  

处理取消按钮的代码单击

$scope.orcancel = function(){

    $scope.oracle = {};

    angular.copy(dataOracle, $scope.oracle);

}

当用户在HTML页面上对表单进行更改时,正在更改变量dataOracle。因此,当执行副本时,新输入的数据将传递给$ scope.oracle。我在其他页面上使用了相同的过程,它按预期工作,但在此页面上它无法正常工作。

1 个答案:

答案 0 :(得分:0)

问题是我在显示和输入字段中使用相同的变量。更改变量后,问题就消失了。