2016-04-24 7 views
-1

http://jsfiddle.net/r2ohsuty/チェック入力のいずれかに変更が

は私が台無しにどこユーザーがわからない変更を加えるかどうかの入力フィールドのいずれかに、しかしかどうかを確認するためにangularjsを使用しようとしたfileds場合、それはしていません期待どおりに動作します。

function AppCtrl($scope) { 

    $scope.submit = function(name, age, gender) { 

    var fields = { 
     name: name, 
     age: age, 
     gender: gender 
    }; 
    for (key in fields) { 
     if (fields[key] === $scope[key]) { 
     $scope.result = 'no changes'; 
     } else { 
     $scope.result = 'have changes'; 
     } 

    } 
    } 
} 
+2

変更?現在の値と現在の値を比較しています。これは常に真です。 – JJJ

+0

ユースケースとは何ですか? – Tushar

+0

@Juhanaの現在の値は、新たに提出された値と比較されます。ユーザーが入力値を変更すると、[キー]の範囲が更新されると思いましたか? – Jennifer

答えて

0

私は、これはあなたが望むものであると考えている:何に比べ

function AppCtrl($scope) { 
    $scope.originalValues = { name: "original name value", age: "original age value", gender: "origin gender value" } 
    $scope.updatedValues = angular.copy($scope.originalValues) 
    // Within your view. set ng-model of each input to the corresponding field 
    // Eg ng-model="updatedValues['name']" 

    $scope.submit = function() { 
     for (key in $scope.originalValues) { 
      if ($scope.originalValues[key] === $scope.updatedValues[key]) { 
       $scope.result = 'no changes'; 
      } else { 
       $scope.result = 'have changes'; 
      } 
     } 
    } 
} 
関連する問題