我尝试使用fieldset,但是禁用了仅禁用输入字段和剩余下拉列表。我的问题有解决方案吗?
答案 0 :(得分:1)
我认为你试图做的是在div上放置条件,当条件为真时,你想要禁用div和所有子元素。
您可以使用ng-disabled
将div标记为已禁用,如下所示:
<div ng-disabled="expression">
<input type="text"> <!-- Won't be disabled! -->
<select> <!-- Also won't be disabled! -->
<option value="1">option 1</option>
</select>
</div>
但是,它不会传播到子元素。
在此处查看doco for ng-disabled:https://docs.angularjs.org/api/ng/directive/ngDisabled
您必须将ng-disabled
属性添加到要禁用的div中的每个子元素。
<div>
<input type="text" ng-disabled="expression">
<select ng-disabled="expression">
<option value="1">option 1</option>
</select>
</div>
保持div上的ng-disabled
属性不以禁用子元素,但它可以用作有用的css选择器。
例如,您可能希望在禁用时为整个div设置不透明度。
<div class="special-div" ng-disabled="expression">
<input type="text" ng-disabled="expression">
<select ng-disabled="expression">
<option value="1">option 1</option>
</select>
</div>
使用此css
div.special-div[disabled] {
opacity: 0.5;
}
答案 1 :(得分:1)
试试这个,
document.getElementById(“yourDivID”)。style.pointerEvents =“none”;
例如:
<div id="myDiv">
<h1>This is my division</h1>
</div>
然后代码如下:
document.getElementById("myDiv").style.pointerEvents = "none";