2017-06-18 90 views
0

新的AngularJS在這裏,剛開始一個新的應用程序,但似乎我失去了一些重要的問候控制器。AngularJS控制器不返回值

<!doctype html> 
 
<html lang="en"> 
 
    <head> 
 
    <meta charset="utf-8"> 
 
    <title>Arsenal Roster</title> 
 
    <link rel="stylesheet" href="bootstrap-3.3.7-dist/css/bootstrap.css" /> 
 
    <script src="angular.min.js"></script> 
 
</head> 
 
<body> 
 

 
<div ng-app="arsenalApp" ng-controller="ArsenalController"> 
 
    <input ng-model="name"> 
 
    <span>{{age}}</span> 
 
</div> 
 

 
<script> 
 

 
var arsenalApp=angular.module('arsenalApp',[]); 
 

 
arsenalApp.controller('ArsenalController',function($scope){ 
 

 
if($scope.name=="jon"){ 
 
$scope.age=12; 
 
}else{ 
 
    $scope.age=1; 
 
} 
 

 
}); 
 

 
</script> 
 

 
</body> 
 
</html>

我想要的功能是:如果我輸入「喬恩」在文本框中,在瀏覽器的輸出應更改爲12,否則,任何其他文字,它應該保持1.

截至目前它只輸出1,並且在輸入'jon'時不會改變。我對控制器有什麼想法?

回答

3
<input ng-model="name" ng-change="onNameChange()"> 

$scope.onNameChange = function() { 
if ($scope.name=="jon") { 
    $scope.age=12; 
} else { 
    $scope.age=1; 
} 
} 

只要名稱被更改並且更改函數應該處理您的條件,您就需要監聽更改事件。