2015-02-27 15 views
7

Tôi có một bộ lọc thả xuống và nó hoạt động tốt. Xem liên kết
http://plnkr.co/edit/c5Hrqfv1eA5qfQpkYR41?p=preview
Nhưng tôi muốn thêm một giá trị khác vào danh sách thả xuống, sau đó nó không hoạt động chính xác. Tôi đã thử với mã dưới đây.Làm thế nào để hiển thị hai giá trị sử dụng ng-tùy chọn trong AngularJs?

<select ng-model="filterDeck.deckDetail" ng-options="deck.name as (deck.name+' - '+deck.level) for deck in data"> 
</select> 

Vui lòng giúp tôi thực hiện việc này. Cảm ơn bạn.
Vimal

Trả lời

10

Nếu bạn không muốn thực hiện bất kỳ thay đổi việc sử dụng bộ lọc chọn này:

<select ng-model="filterDeck.deckDetail" ng-options="deck as deck.name + ' - ' + deck.level for deck in data"> 

Các tùy chọn ở trên sẽ ràng buộc toàn bộ đối tượng cho mô hình.

Nếu bạn chỉ muốn để ràng buộc id với mô hình bạn cần cập nhật chọn và bộ lọc của bạn như sau:

<select ng-model="filterDeck.deckDetail" ng-options="deck.id as deck.name + ' - ' + deck.level for deck in data"> 

Sau đó cập nhật bộ lọc của bạn như thế này:

$scope.customDeck = function (data) { 
    if (data.id === $scope.filterDeck.deckDetail) { 
     return true; 
    } else { 
     return false; 
    } 
    }; 

Dù bằng cách nào sẽ làm việc.

+0

Tôi đã thử với mã của bạn nhưng bộ lọc không hoạt động. – Vimal

+0

Xem chỉnh sửa tôi vừa tạo. Cập nhật lựa chọn của bạn sang lựa chọn mới mà tôi vừa mới đăng và sửa đổi bộ lọc của bạn như được đề xuất. Điều đó sẽ làm các trick. – nweg

+0

Xem chỉnh sửa mới nhất của tôi. Bạn có thể thích tùy chọn đầu tiên tốt hơn ngay bây giờ. Hãy cho tôi biết nếu bạn có bất kỳ câu hỏi nào Vimal! – nweg

Các vấn đề liên quan