我曾嘗試在div標記中使用ng-disabled,但它不起作用。 ng-disabled會在div標籤上工作嗎?如果是,那麼如何?ng-disabled是否在div標籤中工作?如果不是,那爲什麼?
<div ng-disabled="true">
<button>bbb</button>
</div>
我曾嘗試在div標記中使用ng-disabled,但它不起作用。 ng-disabled會在div標籤上工作嗎?如果是,那麼如何?ng-disabled是否在div標籤中工作?如果不是,那爲什麼?
<div ng-disabled="true">
<button>bbb</button>
</div>
「ng-disabled」只是添加或刪除元素上的「disabled」屬性。 但是在HTML中,「禁用」div在所有方面都沒有任何效果。
所以用「ng-disabled」的方式工作,但在div上使用它是沒有意義的。
您可以將「ng-disabled」添加到字段集,儘管這會使嵌套在其中的輸入元素顯示爲禁用。
另一個解決方法可以是通過使用CSS屬性「不透明度」和「指針事件:無」來模擬禁用效果,見http://nerd.vasilis.nl/disable-html-elements-with-css-only/
有若干在HTML元素,是以「禁用」屬性實際上, DIV不是其中之一。
你可以看到什麼樣的元素採取屬性,here
這些元素接受 '禁用' ATTR:
「NG-禁用」的使用,如角的開發指南說,是僅針對輸入標記。
<INPUT ng-disabled="">
...
</INPUT>
輸入是一個自閉標籤。 – otherDewi 2017-10-12 10:48:12
因此,從我收集的情況來看,您試圖在按下按鈕時禁用div嗎?否則,你可以像這樣禁用按鈕。
<div>
<button ng-disabled="true">bbb</button>
</div>
但我不明白爲什麼,因爲它不能再次啓用。
您可以使用下一個指令:
// ************ ** // //此指令是針對所有元素的ng-disabled指令,而不僅用於按鈕 // ************************* ********** //
app.directive('disabledElement', function() {
return {
restrict: 'A',
scope: {
disabled: '@'
},
link: function (scope, element, attrs) {
scope.$parent.$watch(attrs.disabledElement, function (newVal) {
if (newVal)
$(element).css('pointerEvents', 'none');
else
$(element).css('pointerEvents', 'all');
});
}
}
});
和HTML:
<div ng-click="PreviewMobile()" data-disabled-element="toolbar_lock"></div>
嘗試添加'-webkit-touch-callout:none' – oCcSking 2015-12-07 11:15:44
在問候加入CSS效果,如果你使用的引導 - 它已經爲按鈕做這個。您可以輕鬆添加自己的CSS樣式:http://plnkr.co/edit/nmBmfKC7a56iDmupqh7Z?p=preview – NoobSter 2017-02-16 20:34:45