【发布时间】:2015-12-10 08:15:59
【问题描述】:
您好,我知道有一些类似标题的帖子,但我找不到适合我需要的帖子。
我正在尝试过滤 angular 上的对象数组,它给了我错误过滤器 notarray Not an array
你能帮我解决这个问题吗?对象是这样的
{name:"some Name",lastName:"some lastname", address:"some address"}
我的目标是按任何字段进行过滤。
我要搜索的 HTML 输入框
<div class="input-field col s6">
<input value="Busqueda" id="busqueda" type="text" class="validate">
<label class="active" for="busqueda" ng-model="workerFilter.$">Busqueda</label>
</div>
我应该过滤的 HTML 内容
<tr ng-repeat="data in trabajadores.worker track by $index | filter:workerFilter:strict">
<td ng-repeat="value in trabajadores.values">
<div class="container" ng-show="!data.editingWorker">
{{data[value]}}
</div>
<div class="input-field col s4" ng-show="data.editingWorker">
<input value="{{data[value]}}" id="{{data[value]}}_id" type="text" class="validate" ng-model="data[value]">
<label class="active" for="{{data[value]}}_id">{{value}}</label>
</div>
</td>
<td>
<p>
<input type="checkbox" id="{{data}}_id" ng-click="trabajadores.toggleEditing(data)" />
<label for="{{data}}_id">Editar</label>
</p>
</td>
<td>
<i class="material-icons center black-text" ng-click="settings.deleteName(name)">delete</i>
</td>
</tr>
worker 被分配为一个空数组,然后在页面加载时使用 http.post 调用 api。
控制器:
this.worker = [];
this.getWorkers = function(){
$http({
method:'GET',
url:'http://x.x.x.x:8080/api/workers/get'
}).success(function(data){
self.worker = [];
data.forEach(function(element){
var object = JSON.parse(element);
self.worker.push(object);
});
console.log(self.worker); ///results pasted below
}).error(function (err) {
console.log(err);
});
};
这是一个 console.log 和一个 worker 示例
[Object, Object, Object, Object, Object]
数组元素:
0: Object lastName: "test"name: "testName"
对象类型:
Objectlength: 5__proto__: Array[0]
【问题讨论】:
标签: javascript html angularjs