Javascript Angularjs筛选唯一值的ng选项
我想从ng选项中筛选唯一值。我得到的只是重复的条目,如果我得到一个模型,我会得到一大堆空行。我创造了一个砰的一声。非常感谢您的帮助 提前谢谢Javascript Angularjs筛选唯一值的ng选项,javascript,angularjs,Javascript,Angularjs,我想从ng选项中筛选唯一值。我得到的只是重复的条目,如果我得到一个模型,我会得到一大堆空行。我创造了一个砰的一声。非常感谢您的帮助 提前谢谢 这是工作原理 您的代码有几个问题:首先,myArray既不是对象也不是数组,它的语法错误,请检查我的 然后要使用ng选项,您还需要设置ng模型 JS: HTML: 全部的 选定:{{选定| |“无”} 要删除重复项,您需要一个角度模块,如使用过滤器unique 我用您所需要的一切更新了Plunker。您需要像这样更改html代码 <selec
这是工作原理
您的代码有几个问题:首先,myArray
既不是对象也不是数组,它的语法错误,请检查我的
然后要使用ng选项
,您还需要设置ng模型
JS:
HTML:
全部的
选定:{{选定| |“无”}
要删除重复项,您需要一个角度模块,如使用过滤器unique
我用您所需要的一切更新了Plunker。您需要像这样更改html代码
<select ng-model="subType" ng-options="c.metaInfo.subType for c in myArray">
<option value="">All</option>
</select>
但是$scope.myArray不是数组…$scope.myArray=“Results”:{“type”:“application/doc”这不是一个对象,而是检查你的代码> MyReals值-它是无效答案的家伙,这是有意义的。我如何删除重复的条目?我如何删除重复的条目从下拉?我更新的答案删除也重复,请考虑接受答案,如果它解决了你的问题。
var myApp = angular.module('myApp', []);
myApp.controller("Test", function($scope) {
$scope.myArray = [{
"type": "application/doc",
"url": "www.google.com",
"metaInfo": {
"subType": "doc",
"filesize": "60kb"
}
}, {
"type": "application/pdf",
"metaInfo": {
"subType": "pdf",
"filesize": "60kb"
}
}, {
"type": "application/xls",
"metaInfo": {
"subType": "xls",
"filesize": "60kb"
}
}, {
"type": "application/pdf",
"metaInfo": {
"subType": "pdf",
"filesize": "60kb"
}
}];
});
<body ng-controller="Test">
<select ng-options="c.metaInfo.subType for c in myArray | unique:'metaInfo.subType'" ng-model="selected">
<option value="">All</option>
</select>
<p>Selected: {{selected || "None"}}</p>
</body>
<select ng-model="subType" ng-options="c.metaInfo.subType for c in myArray">
<option value="">All</option>
</select>
$scope.myArray = [
{
"type": "application/doc",
"url": "www.google.com",
"metaInfo": {
"subType": "doc",
"filesize": "60kb"
},
},
{
"type": "application/pdf",
"metaInfo": {
"subType": "pdf",
"filesize": "60kb"
},
},
{
"type": "application/xls",
"metaInfo": {
"subType": "xls",
"filesize": "60kb"
},
},
{
"type": "application/pdf",
"metaInfo": {
"subType": "pdf",
"filesize": "60kb"
},
}
];