In my application I want to do some task when updating a scope variable. but my code is run page loading only. it is not trigger while value changes.
abcd value is updating on click but if else condition not trigger. Please help
Html Code
<div ng-app="MyApp" ng-controller="BaseController" id="BaseController">
{{abcd}}{{test}}
</div>
<ul>
<li class="btn" data-id="One"><a href="#">One</a></li>
<li class="btn" data-id="Two"><a href="#">Two</a></li>
<li class="btn" data-id="Three"><a href="#">Three</a></li>
<li class="btn" data-id="Four"><a href="#">Four</a></li>
<li class="btn" data-id="Five"><a href="#">Five</a></li>
</ul>
Angular JS Code
var app = angular.module('MyApp', []);
app.controller('BaseController',['$scope',function($scope){
$scope.abcd = 'testvalue1';
$scope.test = 'test Value 2';
console.log($scope.abcd);
if($scope.abcd === 'One'){
$scope.test = 'First Time';
}else if($scope.abcd === 'Two'){
$scope.test = 'Second Time';
}else if($scope.abcd === 'Three'){
$scope.test = 'Three Time';
}else if($scope.abcd === 'Four'){
$scope.test = 'Four Time';
}else if($scope.abcd === 'Five'){
$scope.test = 'Five Time';
}
}]);
Javascript Code
$('.btn').on('click',function(){
var target = $(this).attr('data-id');
var scope = angular.element($("#BaseController")).scope();
scope.$apply(function(){
scope.abcd = target;
})
});
watchesinstead