Javascript 在Angularjs中显示唯一的下拉选项

Javascript 在Angularjs中显示唯一的下拉选项,javascript,angularjs,angularjs-directive,angularjs-ng-repeat,Javascript,Angularjs,Angularjs Directive,Angularjs Ng Repeat,我有一个下面的下拉列表,运行良好 <select class="form-control" ng-model="cc.id"> <option value="">Chose Id</option> <option ng-repeat="account in accounts |unique:'id'" value="{{a

我有一个下面的下拉列表,运行良好

                     <select class="form-control" ng-model="cc.id">
                       <option value="">Chose Id</option>
                       <option ng-repeat="account in accounts |unique:'id'" value="{{account.id}}">{{name.id}}</option>
                       </select>
虽然它应该只显示选项中的唯一id为

       101
       119
       120
       121
Accounts由帐户的jason数组组成,该数组具有 动作id(主键) 身份证件 文件名 名字 位置

您能告诉我如何修复id上的唯一筛选器,使其仅显示唯一值吗?

根据AngularJS没有唯一筛选器-AngularUI有

上面链接中的以下代码应该会有所帮助:

app.filter('unique', function() {
    return function(input, key) {
        var unique = {};
        var uniqueList = [];
        for(var i = 0; i < input.length; i++){
            if(typeof unique[input[i][key]] == "undefined"){
                unique[input[i][key]] = "";
                uniqueList.push(input[i]);
            }
        }
        return uniqueList;
    };
});
app.filter('unique',function(){
返回功能(输入,按键){
var unique={};
var uniqueList=[];
对于(变量i=0;i
此外,您还可以使用以下内容:

<select ng-model="accounts" ng-options="c.name for c in accounts"></select><br>

根据AngularJS的选择。

没有唯一的过滤器-AngularUI有

上面链接中的以下代码应该会有所帮助:

app.filter('unique', function() {
    return function(input, key) {
        var unique = {};
        var uniqueList = [];
        for(var i = 0; i < input.length; i++){
            if(typeof unique[input[i][key]] == "undefined"){
                unique[input[i][key]] = "";
                uniqueList.push(input[i]);
            }
        }
        return uniqueList;
    };
});
app.filter('unique',function(){
返回功能(输入,按键){
var unique={};
var uniqueList=[];
对于(变量i=0;i
此外,您还可以使用以下内容:

<select ng-model="accounts" ng-options="c.name for c in accounts"></select><br>

根据AngularJS的选择。

没有唯一的过滤器-AngularUI有

上面链接中的以下代码应该会有所帮助:

app.filter('unique', function() {
    return function(input, key) {
        var unique = {};
        var uniqueList = [];
        for(var i = 0; i < input.length; i++){
            if(typeof unique[input[i][key]] == "undefined"){
                unique[input[i][key]] = "";
                uniqueList.push(input[i]);
            }
        }
        return uniqueList;
    };
});
app.filter('unique',function(){
返回功能(输入,按键){
var unique={};
var uniqueList=[];
对于(变量i=0;i
此外,您还可以使用以下内容:

<select ng-model="accounts" ng-options="c.name for c in accounts"></select><br>

根据AngularJS的选择。

没有唯一的过滤器-AngularUI有

上面链接中的以下代码应该会有所帮助:

app.filter('unique', function() {
    return function(input, key) {
        var unique = {};
        var uniqueList = [];
        for(var i = 0; i < input.length; i++){
            if(typeof unique[input[i][key]] == "undefined"){
                unique[input[i][key]] = "";
                uniqueList.push(input[i]);
            }
        }
        return uniqueList;
    };
});
app.filter('unique',function(){
返回功能(输入,按键){
var unique={};
var uniqueList=[];
对于(变量i=0;i
此外,您还可以使用以下内容:

<select ng-model="accounts" ng-options="c.name for c in accounts"></select><br>


对于select.

我将使用库中的
uniq
方法

只需写一行:

$scope.new_accounts = _.uniq(accounts, false, function(p){ return p.id; });
演示

参考:

uniq_uq.uniq(数组,[isSorted],[iterator])别名:唯一 使用===测试对象相等性,生成数组的重复自由版本。如果您事先知道数组已排序,那么为isSorted传递true将运行更快的算法。如果要基于转换计算唯一项,请传递迭代器函数


我会使用库中的
uniq
方法

只需写一行:

$scope.new_accounts = _.uniq(accounts, false, function(p){ return p.id; });
演示

参考:

uniq_uq.uniq(数组,[isSorted],[iterator])别名:唯一 使用===测试对象相等性,生成数组的重复自由版本。如果您事先知道数组已排序,那么为isSorted传递true将运行更快的算法。如果要基于转换计算唯一项,请传递迭代器函数


我会使用库中的
uniq
方法

只需写一行:

$scope.new_accounts = _.uniq(accounts, false, function(p){ return p.id; });
演示

参考:

uniq_uq.uniq(数组,[isSorted],[iterator])别名:唯一 使用===测试对象相等性,生成数组的重复自由版本。如果您事先知道数组已排序,那么为isSorted传递true将运行更快的算法。如果要基于转换计算唯一项,请传递迭代器函数


我会使用库中的
uniq
方法

只需写一行:

$scope.new_accounts = _.uniq(accounts, false, function(p){ return p.id; });
演示

参考:

uniq_uq.uniq(数组,[isSorted],[iterator])别名:唯一 使用===测试对象相等性,生成数组的重复自由版本。如果您事先知道数组已排序,那么为isSorted传递true将运行更快的算法。如果要基于转换计算唯一项,请传递迭代器函数

拥有您所需要的“独特”过滤器

例如:

ng-options="color in colors | unique:'name'"
拥有您所需要的“独特”过滤器

例如:

ng-options="color in colors | unique:'name'"
拥有您所需要的“独特”过滤器

例如:

ng-options="color in colors | unique:'name'"
拥有您所需要的“独特”过滤器

例如:

ng-options="color in colors | unique:'name'"

请,提供
账户
对象+名称请,提供
账户
对象+名称请,提供
账户
对象+名称请,提供
账户
对象+名称