这是一个简单的过滤器:
http://jsfiddle.net/yctchgnk/69/
我试图在调用过滤器之前运行AngularJS函数。但是ng变化事件并没有被触发。在调用过滤器之前,如何针对模型运行AngularJS函数?
src:
<input ng-change="changed" type="text" ng-model="search">
<ul ng-repeat="oneauth in authorisations | search">
{{entry.auth.name}}
</ul>
var app = angular.module('myapp', [], function () {});
app.controller('AppController', function ($scope) {
$scope.authorisations = [
{
"auth":{
"number":"453",
"name":"Apple Inc."
}
},
{
"auth":{
"number":"123",
"name":"Microsoft Inc."
}
}];
$scope.changed = function(){
alert('changed');
}
});
只需更换
<input ng-change="changed" type="text" ng-model="search">
带有
<input ng-change="changed()" type="text" ng-model="search">
希望它能起作用。!
您的代码中有两个错误:
1)以ng重复指定过滤器:
ng-repeat="oneauth in authorisations | filter : search"
2)指定ng更改中的功能:
ng-change="changed()"
这是正在工作的Fiddle