如何添加多个条件到“禁用”?

在启用button之前,我需要检查两个条件是否都是真的。

这里是一个例子:

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

此示例仅在ng-disabled包含一个条件。 我将如何添加另一个如范围variables?

你应该能够&&条件:

 ng-disabled="condition1 && condition2" 

Wanny是正确的。 &&运算符在HTML中不起作用。 使用Angular,您必须使用双重pipe道( || )来处理多种情况。

在原始问题的措辞中可能有一些疑问:

在启用button之前,我需要检查两个条件是否都是真的

首先要记住的是,ng-disabled指令正在评估一个条件,在该条件下,button应该被禁用 ,但是最初的问题是指它应该启用的条件。 在任何禁用ngexpression式不是“truthy”的情况下,它将被启用。

所以,首先要考虑的是如何将问题的逻辑更改为更接近于无效的逻辑要求。 为了启用一个button,检查两个条件是否成立的逻辑反向是,如果任一条件为假,则该button应被禁用。

因此,在原始问题的情况下,ng-disabled的伪expression式是“如果condition1为false 或者 condition2为false,则禁用该button”。 翻译成Angular( https://docs.angularjs.org/guide/expression )所需的JavaScript代码片段,我们得到:

!condition1 || !条件2

Zoomlar是正确的!

实际上,ng-disabled指令对我来说是和“||”逻辑运算符一起工作的。 “&&”只评估一个条件。

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

确保以正确的优先顺序包装条件

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