2017-09-21 5 views
1

私はuser_idを2つの配列に持っていますが、1つはプロジェクトのuser_idです。もう1つはuser_idです。どのようにAngularjsの両方の配列に一致し、一致するものを表示する必要がありますか?

availableusers = ["00000000a447a9160c9d6b74", "000000005c05c11764445bdb"] 
selected Users = ["000000005c05c11764445bdb"] 

今、私は、配列の両方に一致し、選択したdiv要素にマッチしたと空くのdivの中に比類のない表示するために持っている必要があります。

どうすればこのことができますか?この中angularjsは何

+0

? – hamzox

+0

[Javascript配列を使用して設定差を計算する最速または最もエレガントな方法は何ですか?](https://stackoverflow.com/questions/1723168/what-is-the-fastest-ormost-elegant- way-to-compute-a-set-difference-using-javasc) – 31piy

答えて

2

var app = angular.module('myApp', []); 
 
app.controller('myCtrl', function($scope) { 
 

 
    $scope.availableusers = ["00000000a447a9160c9d6b74", "000000005c05c11764445bdb"] 
 
    $scope.selectedUsers = ["000000005c05c11764445bdb"] 
 

 
    $scope.matchUser = []; 
 
    for (var i = 0; i < $scope.availableusers.length; i++) { 
 
    for (var j = 0; j < $scope.selectedUsers.length; j++) { 
 
     if ($scope.availableusers[i] === $scope.selectedUsers[j]) { 
 
     $scope.matchUser.push($scope.availableusers[i]); 
 
     } 
 
    } 
 

 
    } 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.5/angular.min.js"></script> 
 

 
<div ng-app="myApp" ng-controller="myCtrl"> 
 
    <span>Available users</span> 
 
    <div ng-repeat="available in availableusers">{{available}}</div> 
 
    <span>Selected Users</span> 
 
    <div ng-repeat="selectUser in selectedUsers">{{selectUser}}</div> 
 
    <span>Users</span> 
 
    <div ng-repeat="Users in matchUser">{{Users}}</div> 
 
</div>

+0

ありがとうございました。利用可能なユーザーと選択したユーザーを表示しています。私が利用可能なものをクリックした場合、それを選択して追加する必要があり、available.doで削除する必要があります。あなたにはどんな考えもあります。 – Vishnu

+1

私はあなたを助けることができます。 2つの関数を追加して削除する必要があります。 – Lakmi

+0

ありがとうございます。問題が解決しました:) – Vishnu

1
var result=[]; 
for(var i = 0 ;i<availableUsers.length;i++){ 
    if(availableusers[i] === selectedUsers[i]) 
    { 
     result.push(availableusers[i]); 
     }  
    } 
+4

このコードスニペットをご利用いただき、ありがとうございます。適切な説明(* meta.stackexchange.com/q/114762)は、*なぜ*これが問題の良い解決策であるかを示すことで長期的な価値を向上させ、将来の読者にとって他の同様の質問。あなたの前提を含め、あなたの答えを[編集]して説明を加えてください。 –

関連する問題