2014-08-27 3 views
3

Я все еще новичок в изучении всех удивительных вещей, которые может быть угловатым, и одна вещь, на которую я пытаюсь взглянуть, - это бросать ng-invalid, если в наборе выпадающих списков выбран один и тот же элемент ,Обнаружение выбора одного и того же элемента для множественного выбора/выпадающих списков с помощью AngularJS

Например, если у меня было три ниспадающих окна, каждый из которых держал предметы: яблоко, апельсин, персик. И пользователь выбрал яблоко для выпадающего списка 1 и 2, как я могу использовать угловое значение для обнаружения этого в теге select и бросать ng-invalid?

пример текущего select список, который я использую, следующие.

<span> 
    <select ng-options="champ1.cID as champ1.cName for champ1 in Champions1 | orderBy: 'cName'" ng-init="0" ng-model="champ1">{{champ1.cName}}</select> 
</span> 
<span> 
    <select ng-options="champ2.cID as champ2.cName for champ2 in Champions2 | orderBy: 'cName'" ng-init="0" ng-model="champ2">{{champ2.cName}}</select> 
</span> 
<span> 
    <select ng-options="champ3.cID as champ3.cName for champ3 in Champions3 | orderBy: 'cName'" ng-init="0" ng-model="champ3">{{champ3.cName}}</select> 
</span> 

ли я использовать что-то вроде ng-if, или бросить в какой-то ng-class? Я смущен тем, где/как я буду проверять в отношении углового, не выполняя какую-либо директиву или проверку JQuery.

ответ

1

вы можете использовать UI-Validate для пользовательских валидаций

<select ng-options="champ3.cID as champ3.cName for champ3 in Champions3 | orderBy: 'cName'" 
    ng-init="0" ng-model="champ3" 
    ui-validate="{'same' : 'champ1 == champ3 || champ2 == cmap3'}"> 
    {{champ3.cName}} 
</select> 

но выше ответ только пример. с ui-validate еще несколько пользовательских проверок. пожалуйста, прочитайте о ui-validate here.

вы должны больше узнать о проверках форм. образец ссылок here/here.

+0

не могли бы вы остановиться? – harishr

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