我是角度js的新手。我试图在用户开始写入文本框时调用getTagsName函数。根据关键字,将出现自动完成建议。但在我的情况下,ng-change似乎没有工作..任何人都可以帮帮我..
我的HTML:
<tags-input ng-model="tags2" display-property="name" ng-change="getTagsNames()">
<auto-complete source="loadTags($query)"></auto-complete>
</tags-input>
我的js:
$scope.getTagNames = function() {
$scope.loadTags = function(query) {
return $http.get('tags.json');
};
};
答案 0 :(得分:1)
我认为ng-change()指令不起作用,因为当ngTagInput上的标签模型发生变化时,永远不会执行onChange()功能。
使用
on-tag-added="getTagNames()"
和on-tag-removed="getTagNames()"
<tags-input ng-model="tags2" display-property="name" on-tag-added="getTagNames()" on-tag-removed="getTagNames()" >
或者您可以使用$scope.$watch
观看更改,因为标签是数组或对象$scope.$watchCollection
可以使用
$scope.$watchCollection('tags2',function(){
//execute the code on the changes
});