2016-02-16 2 views
0

У меня есть выпадающее меню, в котором параметры поступают из массива с помощью ng-repeat. Он работает как нормальное раскрытие. Но я хочу по-другому. Если выбран один параметр, его следует отключить в других выпадающих меню. можем ли мы сделать так, как в угловом?Как ограничить раскрывающееся меню, чтобы выбрать только одно значение с помощью углового?

<div ng-app="myApp" ng-controller="MyCtrl"> 
    <div ng-repeat="address in addresses"> 
     Billing State: 
     <select 
      ng-model="address.state" 
      ng-options="state.lookupCode as state.description for state in lov_state"></select> 
     <tt>State selected: {{address.state}}</tt> 
    </div> 

</div> 

код контроллера:

var myApp = angular.module('myApp', []); 

myApp.controller('MyCtrl', function($scope) { 

    $scope.addresses = [ 
     {'state': 'AL'}, 
     {'state': 'CA'}, 
     {'state': 'FL'} 
    ]; 

    $scope.lov_state = [ 
     {'lookupCode': 'AL', 'description': 'Alabama'}, 
     {'lookupCode': 'FL', 'description': 'Florida'}, 
     {'lookupCode': 'CA', 'description': 'California'}, 
     {'lookupCode': 'DE', 'description': 'Delaware'} 
    ]; 
}); 

Пожалуйста, помогите мне сделать это. Вот ссылка jsfiddle.

https://jsfiddle.net/santhosh1a32/3vd7hyrq/

+0

Это может помочь вам. http://stackoverflow.com/questions/22005601/how-can-i-disable-to-select-the-particular-option-from-angularjs-dropdown. Вы можете использовать аналогичную концепцию. – chaoticmind

ответ

2

Вы можете использовать disable опцию, представленную в ng-options это сам, используя disable when condition в месте до for ключевого слова.

<div ng-repeat="address in addresses"> 
    Billing State: 
    <select ng-model="address.state" ng-change="checkSelected(address.state)" 
    ng-options="state.lookupCode as state.description disable when (address.state != state.lookupCode && state.selected) for state in lov_state"> 
    </select> 
    <tt>State selected: {{address.state}}</tt> 
</div> 

Demo Here

+0

Точка. Вы заслуживаете повышения. –

+0

@AlexRumba Спасибо человеку за оценку :) –

Смежные вопросы