仅针对特定的 ng-repeat 实例禁用按钮
Disabling the Button for only a specific instance of ng-repeat
我在包含按钮的 div
上有 ng-repeat
。假设 div 使用 5 个按钮重复 5 次。我想在单击时禁用第二个按钮。如何禁用该索引处的按钮?
<div ng-repeat='thing in things'>
<button ng-click='clickToDisable($index)'>button</button>
</div>
像这样。我尝试了 ng-disabled= 'disableButton == $index
,但这只会禁用所有按钮。
可以将$event
传入click函数,将disabled属性设置为true,像这样:
<div ng-repeat='thing in things'>
<button ng-click='clickToDisable($event)'>button</button>
</div>
在控制器中:
$scope.clickToDisable = function(evt) {
evt.currentTarget.setAttribute('disabled', 'true');
}
这是一个 fiddle 它的工作原理。
我在包含按钮的 div
上有 ng-repeat
。假设 div 使用 5 个按钮重复 5 次。我想在单击时禁用第二个按钮。如何禁用该索引处的按钮?
<div ng-repeat='thing in things'>
<button ng-click='clickToDisable($index)'>button</button>
</div>
像这样。我尝试了 ng-disabled= 'disableButton == $index
,但这只会禁用所有按钮。
可以将$event
传入click函数,将disabled属性设置为true,像这样:
<div ng-repeat='thing in things'>
<button ng-click='clickToDisable($event)'>button</button>
</div>
在控制器中:
$scope.clickToDisable = function(evt) {
evt.currentTarget.setAttribute('disabled', 'true');
}
这是一个 fiddle 它的工作原理。