2014-04-11 65 views
1

當我在我的代碼AngularJS結合問題

<pre>{{uploader.queue.indexOf(item)|json}}</pre> 

下,我感到我正在尋找的元素的索引,但如果我做這樣的事情

removeAllFiles(上傳。 queue.indexOf(項))

結果總是

-1

+0

你確定'uploader.queue.indexOf(uploader.queue.indexOf(item))'是你想要做什麼?內部函數返回一個索引,並在同一個數組中查找該索引。 –

+0

好的,只是貼錯了對不起,總是被SO編輯弄糊塗了。 – eugenekgn

+0

你可以發佈更多的代碼嗎?如果您的'remove'調用在控制器中,您需要使用'$ scope.uploader'。 –

回答

1

嘗試了這一點

Working Demo

HTML

<div class="container" ng-app="main" ng-controller="Controller"> 
<div ng-repeat="uploader in uploaders"> 
     <button ng-click="removeAllFiles(uploader.queue.indexOf(item))">{{uploader.queue.indexOf(item)|json}} 
     </button> 
</div> 
</div> 

腳本

angular.module('main', []); 
// Main Controller 
function Controller($scope) { 
    $scope.item = 'N'; 
    $scope.uploaders = [{ 
     clickable: true, 
     id:1, 
     queue: "ABC-Name" 
    }, { 
     clickable: false, 
     id:2, 
     queue: "XYZ-Name" 
    }, { 
     clickable: true, 
     id:3, 
     queue: "LMN-Name" 
    }]; 

    $scope.removeAllFiles = function(item) { 
    console.log(item); 
    } 
}