This is my HTML:
<input id="selectedDueDate" type="text" ng-model="selectedDate" />
When I type into the box, the model is updated via the 2-way-binding mechanism. Sweet.
However when I do this via JQuery...
$('#selectedDueDate').val(dateText);
It doesn't update the model. Why?
Angular doesn't know about that change. For this you should call $scope.$digest()
or make the change inside of $scope.$apply()
:
$scope.$apply(function() {
// every changes goes here
$('#selectedDueDate').val(dateText);
});
See this to better understand dirty-checking
UPDATE: Here is an example