I am trying to create a history of user typed messages from one text area into the other text area. But as soon as a character is typed in first text area, it gets copied into second text area multiple times. Looks as if my event and hence the Angular Controller method is being invoked multiple times.
Can somebody pls have a look at this jsfiddle http://jsfiddle.net/w4g417bt/
Code:
<script
src="http://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script>
<div data-ng-app='myNoteTakingApp1'
data-ng-controller="myNoteTakingController1">
<div style="float: left">
<textarea rows="10" cols="40" data-ng-model="message"></textarea>
<br> Characters Left: {{ left() }}
</div>
<div style="margin-left: 25em">
<textarea rows="10" cols="40" data-ng-model="messageHistory"
data-ng-disabled='true'></textarea>
<br> Characters Left: {{ leftHistory() }}
</div>
<div style="margin-left: 21em">
<button data-ng-click="clear();">Clear</Button>
</div>
</div>
<script>
var app = angular.module('myNoteTakingApp1', []);
app.controller('myNoteTakingController1', function($scope) {
$scope.message = "";
$scope.messageHistory = "";
$scope.left = function() {
return 100 - $scope.message.length;
}
$scope.leftHistory = function() {
$scope.messageHistory += $scope.message;
return 500 - $scope.messageHistory.length;
}
$scope.clear = function() {
$scope.message = "";
}
});
</script>