问题描述
我有以下复选框
<md-checkBox checked.bind="addEventCommand.allDay" change.delegate="allday()">All Day</md-checkBox>
当上述情况成立时,我想禁用div波纹管
<div class="row" >
<md-input label="Start DateTime" value.bind="addEventCommand.startTime" ></md-input>
<md-input label="End DateTime" value.bind="addEventCommand.endTime"></md-input>
</div>
我知道在javascript中我只能获取元素并将其禁用。我不确定如何在角度实现和打字稿中做到这一点
我已将此添加到我的打字稿中
allday() {
if (this.addEventCommand.allDay === true) {
}
}
我尝试过
<md-checkBox ref="addEventCommand.allDay.check"checked.bind="addEventCommand.allDay" >All Day</md-checkBox>
在我尝试过的div上
<div class="row" disabled.bind="addEventCommand.allDay.check.checked"></div>
但是它什么也没做
解决方法
输入元素具有禁用属性,例如复选框,文本输入等。Div元素不是输入元素,因此它没有禁用属性。
一种解决方案是创建一个简单的CSS类,命名为Disabled
.disabled {
background: gray;
pointer-events: none;
}
在您的HTML中:
<div class="row" [class.disabled]="addEventCommand.allDay.check.checked"></div>
,
将ngModel添加到该复选框,然后使用ngIf将其隐藏
<div *ngIf="toShow">
My content
</div>
<input type="checkbox" [(ngModel)]="toShow">
ts
toShow = true;