入力要素に文字列を直接入力すると、AngularJSの双方向データバインディングが非常にうまく機能します。しかし、JavaScriptコードで入力要素の値を変更すると、双方向バインディングが機能しません。これを行うための良い方法はありますか?
htmlコード:
<div ng-app ng-controller="Ctrl">
<input id="inputElem" ng-model="modelName" type="text"/>
<span>{{modelName}}</span>
</div>
javascriptコード:
function Ctrl($scope) {
$scope.modelName = "";
}
function foo() {
// THIS DOES NOT TRIGGER ANGULAR DATA-BINDING!!!!
$("#inputElem").val("THIS IS DOM MANIPULATION");
}