2013-12-01 4 views
0

Я новичок в AngularJS, и я создаю веб-приложение, которое необходимо отключить исходящие значения в выпадающем списке.Как отключить выпадающий список элементов в AngularJS?

Я знаю, как это сделать в jQuery. Это так: http://jsfiddle.net/qiushibaike/FcLLn/

Но я действительно не знаю, как это сделать в AngularJS. Должен ли я попытаться отключить элемент или скрыть его? Могу ли я установить значение

HTML

<select ng-model="numbers.value" required> 
    <option ng-repeat="item in items"> {{item.name}} </option> 
</select><br/> 

JavaScript

$scope.numbers= {}; 

$scope.items = [ 
    { id: 1, name: '11111'}, 
    { id: 2, name: '22222'}, 
    { id: 3, name: '33333'} 
]; 

Если у меня есть что-то вроде этого, как я могу отключить или скрыть параметр 2 и 3 по AngularJS вроде того, что я сделал, используя jQuery?

+1

Предлагаем научиться фильтровать и использовать фильтр вместо отключения – charlietfl

+0

Это поможет вам http://stackoverflow.com/questions/22005601/how-can-i-disable-to-select-the-particular-option- from-angularjs-dropdown – AngularHarsh

ответ

0

Инструкция Angular's ngDisabled.

HTML

<select ng-model="numbers.value" required> 
    <option ng-repeat="item in items" ng-disabled="item.disabled"> {{item.name}} </option> 
</select> 

Javascript

$scope.items = [ 
    { id: 1, name: '11111'}, 
    { id: 2, name: '22222', disabled: true }, 
    { id: 3, name: '33333', disabled: true } 
] 
+0

На данный момент нет возможности установить отключенные опции с помощью директивы 'ngOptions' - есть соответствующая проблема https://github.com/angular/angular.js/issues/638. Поэтому вместо этого вы должны использовать 'ngRepeat'. – Alexei

1

Это также возможно с ngOptions.

Вам просто нужно добавить «отключить, когда» в теге ng-options.

В вашем случае, вы можете также сделать как этот

HTML

<select ng-model="numbers.value" 
    ng-options="var.name as var.name disable when var.disabled for var in items" required> 
     <option value="">-- Select --</option></select> 

Javascript

$scope.items = [ 
    { id: 1, name: '11111'}, 
    { id: 2, name: '22222', disabled: true }, 
    { id: 3, name: '33333', disabled: true } 
] 

Plunkr

Если вы хотите отключить какой-либо параметр динамически из кода ,

здесь Plunkr : Dynamic Example.

+0

Спасибо. «disable when» работает для меня с ngOptions. –

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