作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在复选框未选中的情况下添加红色边框,但不起作用。它基于 .ng-touched.ng-invalid 这个类名。如果未从复选框中选择它,则它应该是红色边框。现在该框即将出现红色,但在未选中的情况下我只需要红色的复选框边框。怎么做?
https://stackblitz.com/edit/angular-q7aiwj?file=src/app/app.component.html
应用程序组件.html:
<form [formGroup]="form" (ngSubmit)="submit()">
<label formArrayName="orders" *ngFor="let order of form.controls.orders.controls; let i = index">
<input type="checkbox" [formControlName]="i">
{{ordersData[i].name}}
</label>
<div *ngIf="!form.valid">At least one order must be selected</div>
<br>
<button type="submit">submit</button>
</form>
最佳答案
你需要做一些事情来完成这件事......
ordersData
数组中[checked]="ordersData[i].checked"
将输入与此属性绑定(bind)并记录任何更改,我们这样做:[(ngModel)]="ordersData[ i].checked"
[style.border]
条件,如果为 false/未选中,则显示一个红色框相关HTML:
<form [formGroup]="form" (ngSubmit)="submit()">
<label formArrayName="orders" *ngFor="let order of form.controls.orders.controls; let i = index">
<div [style.border]="ordersData[i].checked == false ? '2px solid red' : 'none' "
>
<input type="checkbox" [formControlName]="i" [checked]="ordersData[i].checked" [(ngModel)]="ordersData[i].checked"
>
{{i}} - {{ordersData[i].name}}
</div>
</label>
<div *ngIf="!form.valid">At least one order must be selected</div>
<br>
<button type="submit">submit</button>
</form>
TS 中的相关变化:
getOrders() {
return [
{ id: 100, name: 'order 1', checked:false },
{ id: 200, name: 'order 2', checked:false },
{ id: 300, name: 'order 3', checked:false },
{ id: 400, name: 'order 4', checked:false }
];
}
关于css - Angular6:如何为复选框添加边框颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57912381/
我是一名优秀的程序员,十分优秀!