我正在使用jQuery自动完成来开始为输入文本输入的用户填写值。
<input type="text" ng-model="tags" name="tags" id="tags" value="" />
后来我的ng-repeat正在根据该文本过滤事物
<div ng-repeat="ability in abilities | tagsFilter:tags">
{{ ability }}
</div>
在jQuery自动完成内部,有一个回调函数,用于当用户从自动完成下拉菜单中选择一个项目时。
select: function( event, ui ) {
var terms = split( this.value );
// remove the current input
terms.pop();
// add the selected item
terms.push( ui.item.value );
// add placeholder to get the comma-and-space at the end
terms.push( "" );
this.value = terms.join( ", " );
// I Want to tell angularJS to update
return false;
}
我如何告诉我的ng-repeat更新?
我试过查看$ scope.apply()但是$ scope不在jQuery回调的范围内。
答案 0 :(得分:1)
您应该可以从那里访问范围。
试试这个:
var scope = angular.element($('#tags')).scope();
scope.$apply(function() {
// your apply function goes here
})