Sunday, May 19, 2024
 Popular · Latest · Hot · Upcoming
100
rated 0 times [  101] [ 1]  / answers: 1 / hits: 22136  / 12 Years ago, thu, january 3, 2013, 12:00:00

I have the following action



ng-click in my view -> which inturn calls a jQuery ajax function that displays jQuery Qtip -> In the Qtip popup I have an ng-click on an element -> which performs a $http post and has some callbacks to update $scope values.



So all these things are happening properly. But the updates are not getting reflected in the view as per the changes made in the callback in the final stage.



I have a function for ng-mousemove in my view. So whenever I move my mouse, the updates in the view are getting reflected.



What am I doing wrong here? Is the because of transitioning between angular and non-angular? Can anyone help me how to solve this?


More From » angularjs

 Answers
40

As the docs explains:




$apply() is used to execute an expression in angular from outside of
the angular framework. (For example from browser DOM events,
setTimeout, XHR or third party libraries). Because we are calling into
the angular framework we need to perform proper scope life-cycle of
exception handling, executing watches.




So if you have a jQuery code like



$('#myDiv').on('click', function() {
// do stuff
$scope.$apply();
});

[#81115] Tuesday, January 1, 2013, 12 Years  [reply] [flag answer]
Only authorized users can answer the question. Please sign in first, or register a free account.
raveno

Total Points: 453
Total Questions: 92
Total Answers: 92

Location: France
Member since Thu, Oct 27, 2022
2 Years ago
raveno questions
;