1

私はAngularで遊んでいて、上記が可能かどうかを確認しようとしています.

<div ng-controller="Ctrl">
    <input ng-model="name">
    <h1>{{name}}</h1>
    <h1>{{age}}</h1>
</div>
var Ctrl = function($scope) {
    $scope.name = "Kevin"
    $scope.age = "26"

    $scope.$watch('name', function() {
        if($scope.name = 'Bob') {
            $scope.age = '101';
        };
    });
};

ただし、これを行うと、の値がname「Kevin」ではなく「Bob」に設定されるだけです。

私は何を間違っていますか?

4

3 に答える 3

2

これがあなたが探しているものです このプランカーを試してください

   $scope.$watch('name', function(newval,old) {
 //  alert(old + newval)
if (newval == 'Kevin') {
  $scope.age = 99;
} else if (newval == 'Bob') {
  $scope.age = 101;
}

}))

入力値を Kevin から Bob に、またはその逆に変更してみてください。

于 2013-08-03T13:10:55.737 に答える
2

この行 ==の代わりに使用してみてください: :)=if($scope.name = 'Bob') {

于 2013-08-03T12:46:23.893 に答える