Broadcating event on button click :-
$scope.onButtonClick = function(){
$rootScope.$broadcast(\'onButtonClick\');
}
And catching event in
If you broadcast an event on $rootScope
, you can catch the event on each controller $scope
.
IMO you should not catch the event on the $rootScope
.
$scope.$on('onButtonClick',function(event){
alert("catched");
console.log(event);
});
I've created a plunker showcase, which shows that it works exactly as expected. Plunker
It could be possible that you have multiple instances of the same controller, where you catch the event. Please check this as Chandermani suggested.