Подтвердить что ты не робот

Как добавить несколько условий на "ng-disabled"?

Мне нужно проверить, что два условия оба true, прежде чем включать кнопку:

Вот пример:

<button type="submit" ng-disabled="frmUser.pw2.$error.pwMatch" class="btn btn-primary" ng-click="ChangePassword()">Change</button>

Этот пример содержит только одно условие внутри ng-disabled. Как я могу добавить другую, такую ​​как переменная области видимости?

4b9b3361

Ответ 1

Вы должны иметь && условия:

ng-disabled="condition1 && condition2"

Ответ 2

Ванни верен. Оператор && не работает в HTML. С помощью Angular вы должны использовать двойные трубы (||) для нескольких условий.

Ответ 3

Возможно, в формулировке исходного вопроса может быть немного слова:

Мне нужно проверить, чтобы оба условия были истинными, прежде чем включать кнопку

Первое, что нужно помнить, что директива ng-disabled оценивает условие, при котором кнопка должна быть, ну, отключена, но исходный вопрос относится к условиям, в которых он должен быть включен. Он будет включен при любых обстоятельствах, когда выражение ng-disabled не является "правдивым".

Итак, первое соображение заключается в том, как перефразировать логику вопроса ближе к логическим требованиям ng-disabled. Логическое обращение к проверке того, что два условия истинны, чтобы включить кнопку, заключается в том, что если любое условие false, тогда кнопка должна быть отключена.

Таким образом, в случае исходного вопроса псевдо-выражение для ng-disabled - это "отключить кнопку, если условие1 ложно или условие2 ложно". Переходя к фрагменту кода, подобному Javascript, требуемому Angular (https://docs.angularjs.org/guide/expression), получаем:

! условие1 ||! Condition2

Zoomlar это правильно!

Ответ 4

Убедитесь, что условие выполнено в правильном порядке

ng-disabled="((!product.img) || (!product.name))"

Ответ 5

На самом деле директива ng-disabled работает с логическим оператором "||" для меня. "& &" оценивают только одно условие.

http://jsbin.com/kuqilejesi/2/edit?html,js,output

Ответ 6

Вы можете попробовать что-то вроде этого.

<button class="button" ng-disabled="(!data.var1 && !data.var2) ? false : true">
</button>

Для меня это нормально работает.

Ответ 7

этот способ работал для меня

ng-disabled = "(user.Role.ID! = 1) && (user.Role.ID! = 2)"