2016-06-10 19 views
0

我上angularjs,我需要在選定的項目名稱設置所選項目工作的控制器通過名稱選擇所選項目。集angularjs

我怎麼做。我可以通過索引設置的項目,但我怎麼做ITEMNAME

如:負載我設置第一個項目爲選定的項目

$scope.internalRoles = data; 
       $scope.internalItemSelected = $scope.internalRoles[0]; 

和數據就像

data = [{id : 1 , roleName : "admin"} 
,{id : 2 , roleName : "superadmin"}] 

現在我想在角色名稱的基礎上設置選定的項目

$scope.internalItemSelected = $scope.internalRoles["superadmin"] ;//based on roleName 

但它不工作。

如何設置它的名字?

回答

1

你可以寫你的陣列的擴展:

Array.prototype.findItem = function (searchFor) {  
    return this.find(function(item){ 
     return item['roleName'] === searchFor; 
    }); 
}; 

然後調用它:

$scope.internalItemSelected = $scope.internalRoles.findItem("superadmin"); 

您也可以通過「角色名」爲擴展名的屬性,使其在使用中更爲普遍。

0

嗨如果u想從所選擇的項目設置名稱,然後直接做這樣

$scope.internalRoles = data; 
    $scope.internalItemSelected = $scope.internalRoles[0].roleName; 
    console.log($scope.internalItemSelected); 
+0

我的下拉有兩個編號,以及角色名......但我想通過角色名設定程式設計選取的項目。所以有什麼辦法,我可以通過與角色名主要數據源迴路,並設置匹配角色名..項目選定 – Mahajan344

+0

你可以用你的代碼創建一個小提琴 –